Modelowanie aplikacji w usłudze Service Fabric
Ten artykuł zawiera omówienie modelu aplikacji usługi Azure Service Fabric oraz sposobu definiowania aplikacji i usługi za pośrednictwem plików manifestu.
Aplikacja jest kolekcją usług składowych, które wykonują określoną funkcję lub funkcje. Usługa wykonuje kompletną i autonomiczną funkcję oraz może uruchamiać i uruchamiać niezależnie od innych usług. Usługa składa się z kodu, konfiguracji i danych. Dla każdej usługi kod składa się z plików binarnych wykonywalnych, konfiguracja składa się z ustawień usługi, które można załadować w czasie wykonywania, a dane składają się z dowolnych danych statycznych, które mają być używane przez usługę. Każdy składnik w tym hierarchicznym modelu aplikacji może być wersjonowany i uaktualniany niezależnie.
Typ aplikacji to kategoryzacja aplikacji i składa się z pakietu typów usług. Typ usługi to kategoryzacja usługi. Kategoryzacja może mieć różne ustawienia i konfiguracje, ale podstawowe funkcje pozostają takie same. Wystąpienia usługi to różne odmiany konfiguracji usługi tego samego typu usługi.
Klasy (lub "typy") aplikacji i usług są opisywane za pośrednictwem plików XML (manifestów aplikacji i manifestów usługi). Manifesty opisują aplikacje i usługi oraz są szablonami, na których można utworzyć wystąpienie aplikacji z magazynu obrazów klastra. Manifesty zostały szczegółowo omówione w temacie Manifesty aplikacji i usługi. Definicja schematu dla pliku ServiceManifest.xml i ApplicationManifest.xml jest zainstalowana przy użyciu zestawu SDK usługi Service Fabric i narzędzi do katalogu C:\Program Files\Microsoft SDKs\Service Fabric\schemas\ServiceFabricServiceModel.xsd. Schemat XML jest udokumentowany w dokumentacji schematu ServiceFabricServiceModel.xsd.
Kod dla różnych wystąpień aplikacji jest uruchamiany jako oddzielne procesy, nawet jeśli są hostowane przez ten sam węzeł usługi Service Fabric. Ponadto cykl życia każdego wystąpienia aplikacji można zarządzać (na przykład uaktualniać) niezależnie. Na poniższym diagramie pokazano, jak typy aplikacji składają się z typów usług, które z kolei składają się z kodu, konfiguracji i pakietów danych. Aby uprościć diagram, wyświetlane są tylko pakiety kodu/konfiguracji/danych dla ServiceType4
programu , chociaż każdy typ usługi będzie zawierać niektóre lub wszystkie te typy pakietów.
W klastrze może istnieć co najmniej jedno wystąpienie typu usługi. Na przykład wystąpienia usługi stanowej lub repliki osiągają wysoką niezawodność, replikując stan między replikami znajdującymi się w różnych węzłach w klastrze. Replikacja zasadniczo zapewnia nadmiarowość usługi, która ma być dostępna, nawet jeśli jeden węzeł w klastrze ulegnie awarii. Usługa partycjonowana dodatkowo dzieli swój stan (i wzorce dostępu do tego stanu) między węzły w klastrze.
Na poniższym diagramie przedstawiono relację między aplikacjami i wystąpieniami usługi, partycjami i replikami.
Porada
Układ aplikacji w klastrze można wyświetlić przy użyciu narzędzia Service Fabric Explorer dostępnego pod adresem http://< yourclusteraddress>:19080/Explorer. Aby uzyskać więcej informacji, zobacz Wizualizowanie klastra za pomocą narzędzia Service Fabric Explorer.
- Dowiedz się więcej o skalowalności aplikacji.
- Dowiedz się więcej o stanie usługi, partycjonowaniu i dostępności.
- Przeczytaj o sposobie definiowania aplikacji i usług w manifeście aplikacji i usługi.
- Modele hostingu aplikacji opisują relację między replikami (lub wystąpieniami) wdrożonej usługi i procesu hosta usługi.