Service Fabric-AnwendungsszenarienService Fabric application scenarios

Azure Service Fabric bietet eine zuverlässige und flexible Plattform, auf der Sie verschiedenste Geschäftsanwendungen und -dienste erstellen und ausführen können.Azure Service Fabric offers a reliable and flexible platform where you can write and run many types of business applications and services. Diese Anwendungen und Microservices können zustandslos oder zustandsbehaftet sein, und deren Ressourcen werden zur Maximierung der Effizienz auf die virtuellen Maschinen verteilt.These applications and microservices can be stateless or stateful, and they're resource-balanced across virtual machines to maximize efficiency.

In der einzigartigen Architektur von Service Fabric können Sie Echtzeitdatenanalysen, In-Memory-Berechnungen, parallele Transaktionen und die Ereignisverarbeitung in Ihren Anwendungen ausführen.The unique architecture of Service Fabric enables you to perform near real-time data analysis, in-memory computation, parallel transactions, and event processing in your applications. Sie können Ihre Anwendungen je nach den sich ändernden Ressourcenanforderungen problemlos skalieren.You can easily scale your applications in or out depending on your changing resource requirements.

Einen Entwurfsleitfaden für Anwendungen finden Sie unter Microservices-Architektur in Azure Service Fabric und Bewährte Methoden für den Azure Service Fabric-Anwendungsentwurf.For design guidance on building applications, read Microservices architecture on Azure Service Fabric and Best practices for application design using Service Fabric.

Ein Verwenden der Service Fabric-Plattform bietet sich für die folgenden Typen von Anwendungen an:Consider using the Service Fabric platform for the following types of applications:

  • Datensammlung, -verarbeitung und IoT: Service Fabric verarbeitet große Datenmengen und hat wegen seiner zustandsbehafteten Dienste eine geringe Latenz.Data gathering, processing, and IoT: Service Fabric handles large scale and has low latency through its stateful services. Mit Service Fabric können Daten auf Millionen von Geräten verarbeitet werden, auf denen die Daten für das Gerät und die Berechnung zusammengestellt werden.It can help process data on millions of devices where the data for the device and the computation are colocated.

    Zu den Kunden, die IoT-Dienste durch Verwenden von Service Fabric erstellt haben, gehören Honeywell, PCL Construction, Crestron, BMW, Schneider Electric und Mesh Systems.Customers who have built IoT services by using Service Fabric include Honeywell, PCL Construction, Crestron, BMW, Schneider Electric, and Mesh Systems.

  • Gaming- und sitzungsbasierte interaktive Anwendungen: Service Fabric ist nützlich, wenn Ihre Anwendung eine geringe Latenz bei Lese- und Schreibvorgängen erfordert, wie beispielsweise bei Online-Spielen oder Instant Messaging.Gaming and session-based interactive applications: Service Fabric is useful if your application requires low-latency reads and writes, such as in online gaming or instant messaging. Mit Service Fabric können Sie diese interaktiven, zustandsbehafteten Anwendungen erstellen, ohne einen separaten Speicher oder Cache erstellen zu müssen.Service Fabric enables you to build these interactive, stateful applications without having to create a separate store or cache. Lesen Sie Gaminglösungen von Azure. Dort finden Sie einen Entwurfsleitfaden zum Verwenden von Service Fabric in Gamingdiensten.Visit Azure gaming solutions for design guidance on using Service Fabric in gaming services.

    Zu den Kunden, die Gamingdienste mit erstellt haben, gehören Next Games und Digamore.Customers who have built gaming services include Next Games and Digamore. Zu den Kunden, die interaktive Sitzungen erstellt haben, gehören Honeywell mit Hololens.Customers who have built interactive sessions include Honeywell with Hololens.

  • Datenanalysen und Workflowverarbeitung: Anwendungen, die Ereignisse oder Datenströme zuverlässig verarbeiten müssen, profitieren von den optimierten Lese- und Schreibvorgängen in Service Fabric.Data analytics and workflow processing: Applications that must reliably process events or streams of data benefit from the optimized reads and writes in Service Fabric. Außerdem unterstützt Service Fabric Pipelines für die Anwendungsverarbeitung, bei denen Ergebnisse zuverlässig sein und ohne Datenverlust in die nächste Verarbeitungsphase weitergeleitet werden müssen.Service Fabric also supports application processing pipelines, where results must be reliable and passed on to the next processing stage without any loss. Zu diesen Pipelines gehören Transaktions- und Finanzsysteme, bei denen Datenkonsistenz und Berechnungsgewährleistung von größter Wichtigkeit sind.These pipelines include transactional and financial systems, where data consistency and computation guarantees are essential.

    Zu den Kunden, die Geschäftsworkflows erstellt haben, gehören die Zeiss Gruppe , Quorum Business Solutions und Société General.Customers who have built business workflow services include Zeiss Group, Quorum Business Solutions, and Société General.

  • Berechnung für Daten: Mit Service Fabric können Sie zustandsbehaftete Anwendungen erstellen, in denen intensive Datenberechnungen ausgeführt werden.Computation on data: Service Fabric enables you to build stateful applications that do intensive data computation. Service Fabric ermöglicht die Zusammenstellung von Verarbeitung (Berechnung) und Daten in Anwendungen.Service Fabric allows the colocation of processing (computation) and data in applications.

    Wenn Ihre Anwendung auf Daten zugreifen muss, begrenzt die Netzwerklatenz, die auf die Verwendung eines externen Datencache oder einer externen Speicherebene zurückzuführen ist, in der Regel die Rechenzeit.Normally, when your application requires access to data, network latency associated with an external data cache or storage tier limits the computation time. Zustandsbehaftete Service Fabric-Dienste vermeiden diese Latenz, wodurch eine Optimierung von Lese- und Schreibvorgängen ermöglicht wird.Stateful Service Fabric services eliminate that latency, enabling more optimized reads and writes.

    Beispiel: Angenommen, Ihre Anwendung unterbreitet Kunden nahezu in Echtzeit Vorschläge. Bei den Anforderungen muss eine Roundtrip-Zeit von unter 100 Millisekunden erreicht werden.For example, consider an application that performs near real-time recommendation selections for customers, with a round-trip time requirement of less than 100 milliseconds. Im Vergleich zum standardmäßigen Implementierungsmodell, bei dem die benötigten Daten aus einem Remotespeicher abgerufen werden müssen, bieten die Latenz- und Leistungsmerkmale von Service Fabric-Diensten den Benutzern eine schneller reagierende Umgebung.The latency and performance characteristics of Service Fabric services provide a responsive experience to the user, compared with the standard implementation model of having to fetch the necessary data from remote storage. Das System reagiert schneller, weil die Berechnung der Vorschlagsauswahl mit den Daten und Regeln zusammengestellt ist.The system is more responsive because the computation of recommendation selection is colocated with the data and rules.

    Zu den Kunden, die Berechnungsdienste erstellt haben, gehören Solidsoft Reply und Infosupport.Customers who have built computation services include Solidsoft Reply and Infosupport.

  • Hoch verfügbare Dienste: Durch das Erstellen mehrerer sekundärer Dienstreplikate bietet Service Fabric ein schnelles Failover.Highly available services: Service Fabric provides fast failover by creating multiple secondary service replicas. Wenn ein Knoten, Prozess oder individueller Dienst aufgrund eines hardwarebedingten oder anderen Fehlers ausfällt, wird eines der sekundären Replikate zu einem primären Replikat weitergeleitet – mit minimaler Dienstunterbrechung.If a node, process, or individual service goes down due to hardware or other failure, one of the secondary replicas is promoted to a primary replica with minimal loss of service.

  • Skalierbare Dienste: Einzelne Dienste können partitioniert werden, sodass der Zustand im Cluster horizontal hochskaliert werden kann.Scalable services: Individual services can be partitioned, allowing for state to be scaled out across the cluster. Darüber hinaus können einzelne Dienste spontan erstellt und entfernt werden.Individual services can also be created and removed on the fly. Sie können Dienste von wenigen Instanzen auf wenigen Knoten auf Tausende Instanzen auf vielen Knoten erweitern (hochskalieren) und diese Dienste dann nach Bedarf wieder herunterskalieren.You can scale out services from a few instances on a few nodes to thousands of instances on many nodes, and then scale them in again as needed. Mithilfe von Service Fabric können Sie diese Dienste erstellen und ihren gesamten Lebenszyklus verwalten.You can use Service Fabric to build these services and manage their complete life cycles.

Fallstudien zum AnwendungsentwurfApplication design case studies

Fallstudien, die zeigen, wie Service Fabric zum Entwerfen von Anwendungen verwendet wird, sind auf den Websites Kundenstimmen und Microservices in Azure veröffentlicht.Case studies that show how Service Fabric is used to design applications are published on the Customer stories and Microservices in Azure sites.

Entwerfen von Anwendungen, die aus zustandslosen und zustandsbehafteten Microservices bestehenDesigning applications composed of stateless and stateful microservices

Das Erstellen von Anwendungen mit Azure Cloud Services-Workerrollen ist ein Beispiel für einen zustandslosen Dienst.Building applications with Azure Cloud Services worker roles is an example of a stateless service. Im Gegensatz dazu behalten zustandsbehaftete Microservices den autorisierenden Zustand über die Anforderung und ihre Antwort hinaus bei.In contrast, stateful microservices maintain their authoritative state beyond the request and its response. Durch diese Funktion lässt sich über einfache APIs, die für replikationsgestützte Transaktionsgarantien sorgen, Hochverfügbarkeit und Konsistenz erreichen.This functionality provides high availability and consistency of the state through simple APIs that provide transactional guarantees backed by replication.

Zustandsbehaftete Dienste in Service Fabric ermöglichen Hochverfügbarkeit für alle Typen von Anwendungen – nicht nur für Datenbanken und andere Datenspeicher.Stateful services in Service Fabric bring high availability to all types of applications, not just databases and other data stores. Hierbei handelt es sich um einen natürlichen Prozess:This is a natural progression. Anwendungen haben bereits den Wandel von der Verwendung rein relationaler Datenbanken für Hochverfügbarkeit zur Verwendung von NoSQL-Datenbanken vollzogen.Applications have already moved from using purely relational databases for high availability to NoSQL databases. Nun werden die Anwendung selbst hochverfügbar, und Daten werden zur Leistungsoptimierung innerhalb der Anwendung verwaltet, ohne dafür Kompromisse bei Zuverlässigkeit, Konsistenz und Verfügbarkeit einzugehen.Now the applications themselves can have their "hot" state and data managed within them for additional performance gains without sacrificing reliability, consistency, or availability.

Wenn Sie Anwendungen erstellen, die aus Microservices bestehen, haben Sie üblicherweise eine Kombination aus zustandslosen Web-Apps (z.B. ASP.NET und Node.js), aus denen zustandslose und zustandsbehaftete Unternehmensdienste der mittleren Ebene aufgerufen werden.When you're building applications that consist of microservices, you typically have a combination of stateless web apps (like ASP.NET and Node.js) calling onto stateless and stateful business middle-tier services. Die Apps und Dienste werden alle über die Service Fabric-Bereitstellungsbefehle im selben Service Fabric-Cluster bereitgestellt.The apps and services are all deployed in the same Service Fabric cluster through the Service Fabric deployment commands. Jeder dieser Dienste ist hinsichtlich Skalierung, Zuverlässigkeit und Ressourcennutzung unabhängig.Each of these services is independent with regard to scale, reliability, and resource usage. Diese Unabhängigkeit verbessert die Flexibilität in der Entwicklung und in der Lebenszyklusverwaltung.This independence improves agility and flexibility in development and life-cycle management.

Zustandsbehaftete Microservices vereinfachen Anwendungsentwürfe, da durch sie die Notwendigkeit zusätzlicher Warteschlangen und Caches entfällt, die traditionell erforderlich waren, um die Verfügbarkeits- und Latenzanforderungen von rein zustandslosen Anwendungen zu erfüllen.Stateful microservices simplify application designs because they remove the need for the additional queues and caches that have traditionally been required to address the availability and latency requirements of purely stateless applications. Da zustandsbehaftete Dienste Hochverfügbarkeit und niedrige Latenz bieten, gibt es weniger Details, die in Ihrer Anwendung verwaltet werden müssen.Because stateful services have high availability and low latency, there are fewer details to manage in your application.

In den folgenden Abbildungen werden die Unterschiede veranschaulicht, die es zwischen dem Entwerfen einer zustandslosen und einer zustandsbehafteten Anwendung gibt.The following diagrams illustrate the differences between designing an application that's stateless and one that's stateful. Zustandsbehaftete Dienste verringern durch Nutzung der Programmiermodelle Reliable Services und Reliable Actors die Komplexität der Anwendung. Gleichzeitig wird eine hohe Durchsatzrate mit geringer Latenz erzielt.By taking advantage of the Reliable Services and Reliable Actors programming models, stateful services reduce application complexity while achieving high throughput and low latency.

Es folgt eine Beispielanwendung, in der zustandslose Dienste verwendet werden: Anwendung, in der zustandsbehaftete Dienste verwendet werdenHere's an example application that uses stateless services: Application that uses stateless services

Es folgt eine Beispielanwendung, in der zustandsbehaftete Dienste verwendet werden: Anwendung, in der zustandsbehaftete Dienste verwendet werdenHere's an example application that uses stateful services: Application that uses stateful services

Nächste SchritteNext steps