Erkunden von Azure Service Bus

Abgeschlossen

Bei Azure Service Bus handelt es sich um einen vollständig verwalteten Nachrichtenbroker für Unternehmen mit Nachrichtenwarteschlangen und Publish/Subscribe-Themen. Service Bus wird verwendet, um Anwendungen und Dienste zu entkoppeln. Die Datenübertragung zwischen verschiedenen Anwendungen und Diensten erfolgt mithilfe von Nachrichten. Eine Nachricht ist ein Container, der über Metadaten verfügt und Daten enthält. Bei den Daten kann es sich um eine beliebige Art von Informationen handeln, z. B. strukturierte Daten in den folgenden gängigen Formaten: JSON, XML, Apache Avro und Nur-Text.

Im Anschluss finden Sie einige gängige Messagingszenarien:

  • Messaging. Übertragung von Geschäftsdaten (beispielsweise Verkäufe/Bestellungen, Journale oder Bestandsbewegungen)
  • Entkoppelung von Anwendungen: Höhere Zuverlässigkeit und bessere Skalierbarkeit von Anwendungen und Diensten. Client und Dienst müssen nicht gleichzeitig online sein.
  • Themen und Abonnements: Ermöglichung von 1:n-Beziehungen zwischen Herausgebern und Abonnenten
  • Nachrichtensitzungen: Implementierung von Workflows, die die Sortierung oder Verzögerung von Nachrichten erfordern

Service Bus-Dienstebenen

Service Bus bietet drei Preisstufen: Basic, Standard und Premium. Jede Ebene ist für unterschiedliche Anwendungsfälle und Anforderungen ausgelegt.

  • Standardebene – Geeignet für einfache Messagingszenarien mit geringem Durchsatz und minimalen Featureanforderungen. Die Basisebene unterstützt nur Warteschlangen (nicht Themen und Abonnements).

  • Standardebene – Empfohlen für Entwickler-/Testumgebungen oder Szenarien mit geringem Durchsatz, in denen Anwendungen nicht empfindlich auf Drosselung reagieren. Unterstützt Warteschlangen und Themen mit Abonnements.

  • Premium-Stufe – Empfohlen für Produktionsszenarien, die vorhersehbare Latenz und hohen Durchsatz erfordern. Bietet Ressourcenisolation auf CPU- und Arbeitsspeicherebene und erweiterte Funktionen für unternehmenskritische Anwendungen.

Weitere Informationen zu den verfügbaren Tarifen finden Sie unter Service Bus-Preise.

Stufenvergleich

Funktion Basic Norm Prämie
Durchsatz Low Variable High
Leistung Variable Latenzzeit Vorhersagbare Leistung
Pricing Nutzungsbasierte Bezahlung Variable Preisgestaltung (nutzungsbasierte Bezahlung) Feste Preise pro Messagingeinheit
Scaling Möglichkeit zur Herauf- und Herunterskalierung der Workload
Nachrichtengröße 256 KB 256 KB Bis zu 100 MB
Themen und Abonnements Nicht unterstützt Unterstützt Unterstützt
Transaktionen Nicht unterstützt Unterstützt Unterstützt
Automatische Weiterleitung Nicht unterstützt Unterstützt Unterstützt
Nachrichtensitzungen Unterstützt Unterstützt Unterstützt

Erweiterte Features

Service Bus enthält auch erweiterte Features für komplexere Messagingszenarien. In der folgenden Tabelle werden mehrere dieser Funktionen beschrieben.

Funktion BESCHREIBUNG
Nachrichtensitzungen Mithilfe von Sitzungen können Sie in Service Bus eine FIFO-Garantie (First In, First Out) erstellen. Nachrichtensitzungen ermöglichen die exklusive geordnete Verarbeitung von unbegrenzten Sequenzen verwandter Nachrichten.
Automatische Weiterleitung Die Funktion für automatische Weiterleitung verkettet eine Warteschlange oder ein Abonnement mit einer anderen Warteschlange oder einem anderen Thema, die bzw. das sich im selben Namespace befindet.
Warteschlange für unzustellbare Nachrichten Service Bus unterstützt eine Warteschlange für unzustellbare Nachrichten (Dead-Letter Queue, DLQ). Eine DLQ enthält Nachrichten, die an keinen Empfänger übermittelt werden können. Mit Service Bus können Sie Nachrichten aus der DLQ entfernen und untersuchen.
Zeitgesteuerte Zustellung Sie können Nachrichten zur verzögerten Verarbeitung an eine Warteschlange oder an ein Thema senden. Sie können einen Auftrag so planen, dass er zu einem bestimmten Zeitpunkt für die Verarbeitung durch ein System verfügbar wird.
Nachrichtenverzögerung Ein Warteschlangen- oder Abonnementclient kann das Abrufen einer Nachricht auf einen späteren Zeitpunkt verschieben. Die Nachricht bleibt in der Warteschlange oder im Abonnement, wird jedoch zurückgestellt.
Transaktionen Eine Transaktion fasst mehrere Vorgänge zu einem Ausführungsbereich zusammen. Service Bus unterstützt Gruppierungsvorgänge für eine einzelne Nachrichtenentität innerhalb eines einzelnen Transaktionsbereichs. Eine Nachrichtenentität kann eine Warteschlange, ein Thema oder ein Abonnement sein.
Filtern und Aktionen Abonnenten können definieren, welche Nachrichten von einem Thema empfangen werden sollen. Diese Nachrichten werden in Form von benannten Abonnementregeln angegeben.
Automatisches Löschen nach Leerlauf Automatisches Löschen nach Leerlauf ermöglicht die Angabe eines Leerlaufintervalls, nach dem eine Warteschlange automatisch gelöscht wird. Die Mindestdauer ist fünf Minuten.
Duplikaterkennung Ein Fehler kann dazu führen, dass der Client sich beim Ergebnis eines Sendevorgangs nicht sicher ist. Mit der Duplikaterkennung kann der Absender dieselbe Nachricht erneut senden, oder die Warteschlange oder das Thema kann doppelte Kopien verwerfen.
Sicherheitsprotokolle Service Bus unterstützt Sicherheitsprotokolle wie Shared Access Signatures (SAS), Rollenbasierte Zugriffssteuerung (RBAC) und verwaltete Identitäten für Azure-Ressourcen.
Georedundante Notfallwiederherstellung Sollte eine Azure-Region oder ein Azure-Rechenzentrum ausfallen, kann die Datenverarbeitung dank georedundanter Notfallwiederherstellung in einer anderen Region oder in einem anderen Rechenzentrum fortgesetzt werden.
Sicherheit Service Bus unterstützt die Standardprotokolle AMQP 1.0 und HTTP/REST.

Sicherstellen der Konformität mit Standards und Protokollen

Das primäre Verbindungsprotokoll für Service Bus ist Advanced Messaging Queueing Protocol (AMQP) 1.0 (offener ISO/IEC-Standard). Es ermöglicht Kunden das Schreiben von Anwendungen für die Verwendung mit Service Bus und lokalen Brokern wie ActiveMQ oder RabbitMQ. Der Protokollleitfaden zu AMQP enthält ausführliche Informationen, die Ihnen weiterhelfen, falls Sie eine Abstraktion dieser Art erstellen möchten.

Service Bus Premium ist vollständig mit der Java Message Service (JMS) 2.0-API für Java/Jakarta EE konform.

Clientbibliotheken

Vollständig unterstützte Service Bus-Clientbibliotheken sind über das Azure SDK verfügbar.