Stan usługi

Stan usługi odnosi się do danych w pamięci lub na dysku, które usługa wymaga działania. Obejmuje ona na przykład struktury danych i zmienne składowe, które usługa odczytuje i zapisuje w celu wykonania pracy. W zależności od tego, jak usługa jest zaprojektowana, może również zawierać pliki lub inne zasoby przechowywane na dysku. Na przykład pliki używane przez bazę danych do przechowywania danych i dzienników transakcji.

Jako przykładowa usługa rozważmy kalkulator. Podstawowa usługa kalkulatora przyjmuje dwie liczby i zwraca ich sumę. Wykonanie tego obliczenia nie obejmuje żadnych zmiennych składowych ani innych informacji.

Teraz rozważmy ten sam kalkulator, ale z dodatkową metodą przechowywania i zwracania ostatniej obliczonej sumy. Ta usługa jest teraz stanowa. Stanowe oznacza, że zawiera pewien stan, do którego jest zapisywany, gdy oblicza nową sumę i odczytuje z momentu zwrócenia ostatniej obliczonej sumy.

W usłudze Azure Service Fabric pierwsza usługa jest nazywana usługą bezstanową. Druga usługa jest nazywana usługą stanową.

Przechowywanie stanu usługi

Stan może być zewnętrznie lub kolokowany z kodem, który manipuluje stanem. Zewnętrzność stanu jest zwykle wykonywana przy użyciu zewnętrznej bazy danych lub innego magazynu danych, który działa na różnych maszynach przez sieć lub poza procesem na tym samym komputerze. W naszym przykładzie kalkulatora magazyn danych może być bazą danych SQL lub wystąpieniem usługi Azure Table Store. Każde żądanie obliczenia sumy wykonuje aktualizację tych danych, a żądanie do usługi zwrócenia wartości wyniku bieżącej wartości pobieranej z magazynu.

Stan może być również współlokowany z kodem, który manipuluje stanem. Usługi stanowe w usłudze Service Fabric są zwykle tworzone przy użyciu tego modelu. Usługa Service Fabric zapewnia infrastrukturę zapewniającą wysoką dostępność, spójność i trwałość tego stanu oraz możliwość łatwego skalowania usług utworzonych w ten sposób.

Następne kroki

Aby uzyskać więcej informacji na temat pojęć związanych z usługą Service Fabric, zobacz następujące artykuły: