Stato del servizioService state

Stato del servizio si riferisce ai dati in memoria o su disco di cui un servizio necessita per funzionare.Service state refers to the in-memory or on disk data that a service requires to function. Si tratta ad esempio delle strutture di dati e delle variabili membro che vengono lette e scritte dal servizio per il funzionamento.It includes, for example, the data structures and member variables that the service reads and writes to do work. A seconda di come è progettato il servizio, può anche includere file o altre risorse archiviati su disco.Depending on how the service is architected, it could also include files or other resources that are stored on disk. I file ad esempio che un database userebbe per archiviare log delle transazioni e dati.For example, the files a database would use to store data and transaction logs.

Come un servizio di esempio, si consideri una calcolatrice.As an example service, let's consider a calculator. Questo servizio di calcolatrice di base accetta due numeri per restituirne la somma.A basic calculator service takes two numbers and returns their sum. L'esecuzione di questo calcolo non implica alcuna variabile membro o altre informazioni.Performing this calculation involves no member variables or other information.

Si consideri ora la stessa calcolatrice, ma con un metodo aggiuntivo di memorizzazione e restituzione dell'ultima somma calcolata.Now consider the same calculator, but with an additional method for storing and returning the last sum it has computed. Il servizio è ora con stato.This service is now stateful. Con stato significa che contiene uno stato in cui scrive quando calcola una nuova somma e da cui legge quando viene richiesto di restituire l'ultima somma calcolata.Stateful means it contains some state that it writes to when it computes a new sum and reads from when you ask it to return the last computed sum.

In Service Fabric di Azure il primo servizio è denominato servizio senza stato.In Azure Service Fabric, the first service is called a stateless service. Il secondo invece è denominato servizio con stato.The second service is called a stateful service.

Archiviazione dello stato del servizioStoring service state

Lo stato può essere archiviato all'esterno oppure condividere la posizione con il codice che modifica lo stato.State can be either externalized or co-located with the code that is manipulating the state. L'esternalizzazione dello stato viene in genere eseguita usando un database esterno o un altro archivio dati eseguito in altri computer sulla rete o all'esterno del processo nello stesso computer.Externalization of state is typically done by using an external database or other data store that runs on different machines over the network or out of process on the same machine. In questo esempio di calcolatrice, l'archivio dati potrebbe essere un database SQL o un'istanza dell'archivio tabelle di Azure.In our calculator example, the data store could be a SQL database or instance of Azure Table Store. Ogni richiesta per calcolare la somma esegue un aggiornamento di questi dati e richiede al servizio di restituire il risultato nel valore corrente recuperato dall'archivio.Every request to compute the sum performs an update on this data, and requests to the service to return the value result in the current value being fetched from the store.

Lo stato può anche condividere la posizione con il codice che modifica lo stato.State can also be co-located with the code that manipulates the state. I servizi con stato in Service Fabric vengono in genere creati usando questo modello.Stateful services in Service Fabric are typically built using this model. Service Fabric fornisce l'infrastruttura per assicurare che questo stato sia con disponibilità elevata, coerente e durevole e che i servizi creati in questo modo possano essere facilmente scalabili.Service Fabric provides the infrastructure to ensure that this state is highly available, consistent, and durable, and that the services built this way can easily scale.

Passaggi successiviNext steps

Per altre informazioni sui concetti relativi a Service Fabric, vedere gli articoli seguenti:For more information on Service Fabric concepts, see the following articles: