Modellare un'applicazione in Service FabricModel an application in Service Fabric

Questo articolo fornisce una panoramica del modello applicativo di Azure Service Fabric e come definire un'applicazione e un servizio attraverso file manifesto.This article provides an overview of the Azure Service Fabric application model and how to define an application and service via manifest files.

Informazioni sul modello applicativoUnderstand the application model

Un'applicazione è una raccolta di servizi costituenti che eseguono determinate funzioni.An application is a collection of constituent services that perform a certain function or functions. Un servizio esegue una funzione completa e autonoma e può essere avviato ed eseguito in modo indipendente da altri servizi.A service performs a complete and standalone function and can start and run independently of other services. Un servizio è costituito da codice, configurazione e dati.A service is composed of code, configuration, and data. Per ogni servizio, il codice è costituito dai file binari eseguibili, la configurazione è costituita dalle impostazioni del servizio che possono essere caricate in fase di esecuzione e i dati sono costituiti da dati statici arbitrari che devono essere usati dal servizio.For each service, code consists of the executable binaries, configuration consists of service settings that can be loaded at run time, and data consists of arbitrary static data to be consumed by the service. Per ogni componente di questo modello applicativo gerarchico è possibile eseguire il controllo delle versioni e l'aggiornamento in modo indipendente.Each component in this hierarchical application model can be versioned and upgraded independently.

Modello di applicazione di Service Fabric

Un tipo di applicazione è una categorizzazione di un'applicazione e consiste in un'aggregazione di tipi di servizi.An application type is a categorization of an application and consists of a bundle of service types. Un tipo di servizio è una categorizzazione di un servizio.A service type is a categorization of a service. La categorizzazione di un servizio può disporre di impostazioni e configurazioni diverse, ma la funzionalità di base resta la stessa.The categorization can have different settings and configurations, but the core functionality remains the same. Le istanze di un servizio sono le diverse varianti di configurazione dello stesso tipo di servizio.The instances of a service are the different service configuration variations of the same service type.

Le classi (o "tipi") di applicazioni e servizi vengono descritte nei file XML (manifesti dell'applicazione e manifesti del servizio).Classes (or "types") of applications and services are described through XML files (application manifests and service manifests). I manifesti descrivono applicazioni e servizi e come trovare i modelli in cui le applicazioni è possibile creare istanze dall'archivio di immagini del cluster.The manifests describe applications and services and are the templates against which applications can be instantiated from the cluster's image store. I manifesti sono descritti in dettaglio nella manifesti di applicazione e servizio.Manifests are covered in detail in Application and service manifests. La definizione dello schema per i file ServiceManifest.xml e ApplicationManifest.xml viene installata con l'SDK e gli strumenti di Service Fabric in C:\Programmi\Microsoft SDKs\Service Fabric\schemas\ServiceFabricServiceModel.xsd.The schema definition for the ServiceManifest.xml and ApplicationManifest.xml file is installed with the Service Fabric SDK and tools to C:\Program Files\Microsoft SDKs\Service Fabric\schemas\ServiceFabricServiceModel.xsd. Lo schema XML è documentato documentazione dello schema ServiceFabricServiceModel.xsd.The XML schema is documented in ServiceFabricServiceModel.xsd schema documentation.

Il codice di istanze di applicazioni diverse viene eseguito come processo separato anche se ospitato dallo stesso nodo di Service Fabric.The code for different application instances run as separate processes even when hosted by the same Service Fabric node. Il ciclo di vita di ogni istanza dell'applicazione può inoltre essere gestito, ad esempio aggiornato, in modo indipendente.Furthermore, the lifecycle of each application instance can be managed (for example, upgraded) independently. Il diagramma seguente illustra come i tipi di applicazioni siano costituiti da tipi di servizi, che a loro volta sono costituiti da codice, configurazione e pacchetti di dati.The following diagram shows how application types are composed of service types, which in turn are composed of code, configuration, and data packages. Per semplificare il diagramma, vengono visualizzati solo i pacchetti codice/configurazione/dati relativi a ServiceType4, anche se ogni tipo di servizio può includere tutti questi tipi di pacchetti o solo alcuni.To simplify the diagram, only the code/config/data packages for ServiceType4 are shown, though each service type would include some or all those package types.

Tipi di applicazioni di Service Fabric e tipi di servizio

Nel cluster possono essere attive una o più istanze di un tipo di servizio.There can be one or more instances of a service type active in the cluster. Le istanze o le repliche del servizio con stato ad esempio raggiungono un'elevata affidabilità replicando lo stato tra le repliche contenute in nodi diversi del cluster.For example, stateful service instances, or replicas, achieve high reliability by replicating state between replicas located on different nodes in the cluster. Essenzialmente, la replica fornisce ridondanza in modo che il servizio sia disponibile anche se un nodo in un cluster ha un malfunzionamento.Replication essentially provides redundancy for the service to be available even if one node in a cluster fails. Un servizio partizionato suddivide ulteriormente il proprio stato e i modelli di accesso a tale stato tra i nodi del cluster.A partitioned service further divides its state (and access patterns to that state) across nodes in the cluster.

Il diagramma seguente illustra la relazione tra applicazioni e istanze di servizi, partizioni e repliche.The following diagram shows the relationship between applications and service instances, partitions, and replicas.

Partizioni e repliche in un servizio

Suggerimento

È possibile visualizzare il layout delle applicazioni in un cluster usando lo strumento Service Fabric Explorer disponibile all'indirizzo http://<yourclusteraddress>:19080/Explorer.You can view the layout of applications in a cluster using the Service Fabric Explorer tool available at http://<yourclusteraddress>:19080/Explorer. Per altre informazioni, vedere Visualizzare il cluster con Service Fabric Explorer.For more information, see Visualizing your cluster with Service Fabric Explorer.

Passaggi successiviNext steps