Azure Event Grid-Namespacekonzepte

In diesem Artikel werden die wichtigsten Konzepte und Funktionen vorgestellt, die Namespacethemen zugeordnet sind.

Ereignisse

Ein Ereignis ist die kleinste Informationsmenge, die einen Vorgang oder Vorfall im System vollständig beschreibt. Wir bezeichnen ein Ereignis häufig als „diskretes Ereignis“, weil es eine eindeutige, eigenständige Tatsache in einem System darstellt, die eine Erkenntnis bietet, die verwertbar sein kann. Jedes Ereignis enthält allgemeine Informationen wie source (Quelle) des Ereignisses, time (Zeitpunkt), an dem das Ereignis aufgetreten ist, und einen eindeutigen Bezeichner. Jedes Ereignis verfügt auch über einen typeeindeutigen Bezeichner, der die Art der Ankündigung beschreibt, für die das Ereignis verwendet wird.

Beispielsweise enthält ein Ereignis zu einer neuen Datei, die in Azure Storage erstellt wird, Details über die Datei, z.B. den Wert von lastTimeModified. Ein Event Hubs-Ereignis die URL der Erfassungsdatei. Ein Ereignis zu einer neuen Bestellung in Ihrem Bestellungs-Microservice könnte ein orderId-Attribut und ein URL-Attribut für die Zustandsdarstellung der Bestellung besitzen. Einige weitere Beispiele für Ereignistypen sind: com.yourcompany.Orders.OrderCreated, org.yourorg.GeneralLedger.AccountChanged, io.solutionname.Auth.MaximumNumberOfUserLoginAttemptsReached.

Hier sehen Sie ein Beispiel für ein Ereignis:

{
    "specversion" : "1.0",
    "type" : "com.yourcompany.order.created",
    "source" : "/orders/account/123",
    "subject" : "O-28964",
    "id" : "A234-1234-1234",
    "time" : "2018-04-05T17:31:00Z",
    "comexampleextension1" : "value",
    "comexampleothervalue" : 5,
    "datacontenttype" : "application/json",
    "data" : {
       "orderId" : "O-28964",
       "URL" : "https://com.yourcompany/orders/O-28964"
    }
}

Eine andere Art von Ereignis

Die Benutzercommunity bezeichnet als „Ereignisse“ auch Nachrichten, die einen Datenpunkt enthalten, wie z. B. das Lesen eines einzelnen Geräts oder einen Klick auf einer Webanwendungsseite. Diese Art von Ereignis wird normalerweise über ein Zeitfenster analysiert, um Erkenntnisse zu gewinnen und eine Aktion auszuführen. In der Dokumentation von Event Grid wird diese Art von Ereignis als Datenpunkt, Streamingdaten oder einfach als Telemetrie(daten) bezeichnet. Unter anderem wird diese Art von Ereignissen mit dem Message Queuing Telemetry Transport-Brokerfeature (MQTT) von Event Grid verwendet.

CloudEvents

Event Grid-Namensraumthemen akzeptieren Ereignisse, die dem offenen Standard CloudEvents 1.0 der Cloud Native Computing Foundation (CNCF) entsprechen, unter Verwendung der HTTP-Protokollbindung mit JSON-Format. Eine CloudEvents-Instanz ist eine Art von Nachricht, die den zu übermittelnden Inhalt (als Ereignisdaten bezeichnet) und die dazugehörigen Metadaten enthält. Die Ereignisdaten in ereignisgesteuerten Architekturen enthalten in der Regel die Informationen, die eine Änderung des Systemzustands ankündigen. Die CloudEvents-Metadaten bestehen aus einer Reihe von Attributen, die kontextbezogene Informationen zu der Nachricht bereitstellen, z. B. woher sie stammt (das Quellsystem), der Typ usw. Alle gültigen Nachrichten, die den CloudEvents-Spezifikationen entsprechen, müssen die folgenden erforderlichen Kontextattributeenthalten:

Die CloudEvents-Spezifikation definiert auch optionale und erweiterte Kontextattribute, die Sie bei der Verwendung von Event Grid einbeziehen können.

Bei Verwendung von Event Grid ist CloudEvents aufgrund seiner gut dokumentierten Anwendungsfälle (Modi für die Übertragung von Ereignissen, Ereignisformaten usw.), seiner Erweiterbarkeit und der verbesserten Interoperabilität das bevorzugte Ereignisformat. CloudEvents verbessert die Interoperabilität, indem ein allgemeines Ereignisformat für die Veröffentlichung bereitgestellt wird und Ereignisse genutzt werden. Sie ermöglicht einheitliche Tools und Standardmethoden für das Routing und Behandeln von Ereignissen.

CloudEvents-Inhaltsmodus

Die CloudEvents-Spezifikation definiert drei Inhaltsmodi: binär, strukturiertund gebündelt.

Wichtig

In jedem Inhaltsmodus können Sie Text (JSON, text/* usw.) oder binär codierte Ereignisdaten austauschen. Der Binärinhaltsmodus wird nicht ausschließlich zum Senden von Binärdaten verwendet.

Bei den Inhaltsmodi geht es nicht darum, welche Kodierung Sie verwenden, binär oder Text, sondern darum, wie die Ereignisdaten und ihre Metadaten beschrieben und ausgetauscht werden. Der strukturierte Inhaltsmodus verwendet eine einzelne Struktur, z. B. ein JSON-Objekt, bei dem sowohl die Kontextattribute als auch Ereignisdaten in der HTTP-Payload zusammen sind. Der binäre Inhaltsmodus trennt zwischen Kontextattributen, die auf HTTP-Header abgebildet werden, und Ereignisdaten, bei denen es sich um die HTTP-Payload handelt, die entsprechend dem in Content-Type eingestellten Medientyp kodiert ist.

CloudEvents Support

Die Tabelle zeigt die aktuelle Unterstützung für die CloudEvents-Spezifikation:

CloudEvents-Inhaltsmodus Unterstützt?
Strukturiertes JSON-Format Ja
Strukturierte JSON-Format als Batch Ja, für Veröffentlichungsereignisse
Binär Ja, für Veröffentlichungsereignisse

Die maximal zulässige Größe für ein Ereignis beträgt 1 MB. Ereignisse, die größer als 64 KB sind, werden in Schritten von 64 KB in Rechnung gestellt.

Strukturierter Inhaltsmodus

Eine Nachricht im strukturierten CloudEvents-Inhaltsmodus weist sowohl die Kontextattribute als auch die Ereignisdaten in einer HTTP-Payload auf.

Wichtig

Derzeit unterstützt Event Grid das CloudEvents JSON-Format mit HTTP.

Hier ist ein Beispiel für ein CloudEvents im strukturierten Modus mit dem JSON-Format. Sowohl Metadaten (alle Attribute, die nicht „Daten“) als auch die Nachrichten-/Ereignisdaten (das „data“-Objekt) werden mithilfe von JSON beschrieben. Unser Beispiel enthält alle erforderlichen Kontextattribute zusammen mit einigen optionalen Attributen (subject, timeund datacontenttype) und Erweiterungsattributen (comexampleextension1, comexampleothervalue).

{
    "specversion" : "1.0",
    "type" : "com.yourcompany.order.created",
    "source" : "/orders/account/123",
    "subject" : "O-28964",
    "id" : "A234-1234-1234",
    "time" : "2018-04-05T17:31:00Z",
    "comexampleextension1" : "value",
    "comexampleothervalue" : 5,
    "datacontenttype" : "application/json",
    "data" : {
       "orderId" : "O-28964",
       "URL" : "https://com.yourcompany/orders/O-28964"
    }
}

Sie können das JSON-Format mit strukturierten Inhalten verwenden, um Ereignisdaten zu senden, die kein JSON-Wert sind. Zu diesem Zweck führen Sie die folgenden Schritte aus:

  1. Fügen Sie ein datacontenttype Attribut mit dem Medientyp hinzu, in dem die Daten codiert sind.
  2. Wenn der Medientyp in einem Textformat wie text/plain, text/csvoder application/xml, codiert ist, sollten Sie ein data Attribut mit einer JSON-Zeichenfolge verwenden, die die Kommunikation als Wert enthält.
  3. Wenn der Medientyp eine binäre Codierung darstellt, sollten Sie ein data_base64 Attribut verwenden, dessen Wert eine JSON-Zeichenfolge ist, die den base64-codierten Binärwert enthält.

In diesem CloudEvent werden z. B. Ereignisdaten in application/protobuf codiert, um Protobuf-Nachrichten auszutauschen.

{
    "specversion" : "1.0",
    "type" : "com.yourcompany.order.created",
    "source" : "/orders/account/123",
    "id" : "A234-1234-1234",
    "time" : "2018-04-05T17:31:00Z",
    "datacontenttype" : "application/protobuf",
    "data_base64" : "VGhpcyBpcyBub3QgZW5jb2RlZCBpbiBwcm90b2J1ZmYgYnV0IGZvciBpbGx1c3RyYXRpb24gcHVycG9zZXMsIGltYWdpbmUgdGhhdCBpdCBpcyA6KQ=="
}

Weitere Informationen über die Verwendung von data oder Attributen finden Sie unter data_base64Umgang mit Daten.

Weitere Informationen zu diesem Inhaltsmodus finden Sie in den Spezifikationen des CloudEvents HTTP-strukturierten Inhaltsmodus.

Gebündelter Inhaltsmodus

Event Grid unterstützt derzeit den gebündelten JSON-Inhaltsmodus bei der Veröffentlichung von CloudEvents in Event Grid. Dieser Inhaltsmodus verwendet ein JSON-Array, das mit CloudEvents gefüllt ist, im strukturierten Inhaltsmodus. Ihre Anwendung kann z. B. zwei Ereignisse mithilfe eines Arrays wie der folgenden veröffentlichen. Ebenso gilt: Wenn Sie die Datenebene SDK von Event Grid verwenden, ist diese Payload auch das, was gesendet wird:

[
    {
        "specversion": "1.0",
        "id": "E921-1234-1235",
        "source": "/mycontext",
        "type": "com.example.someeventtype",
        "time": "2018-04-05T17:31:00Z",
        "data": "some data"
    },
    {
        "specversion": "1.0",
        "id": "F555-1234-1235",
        "source": "/mycontext",
        "type": "com.example.someeventtype",
        "time": "2018-04-05T17:31:00Z",
        "data": {
            "somekey" : "value",
            "someOtherKey" : 9
        }
    }
]

Weitere Informationen finden Sie in den Spezifikationen für den gebündelten Inhaltsmodus von CloudEvents.

Batchverarbeitung

Ihre Anwendung sollte mehrere Ereignisse als Batch in einem Array zusammenfassen, um mit einer einzelnen Veröffentlichungsanforderung eine höhere Effizienz und einen höheren Durchsatz zu erzielen. Batches können bis zu 1 MB groß sein, und die maximal zulässige Größe eines Ereignisses beträgt 1 MB.

Binärinhaltsmodus

Ein CloudEvent im Binärinhaltsmodus weist seine Kontextattribute auf, die als HTTP-Header beschrieben werden. Die Namen der HTTP-Header sind der Name des Kontextattributes, dem das Präfix ce- vorangestellt ist. Der Content-Type Header gibt den Medientyp an, in dem die Ereignisdaten codiert sind.

Wichtig

Bei Verwendung des Binärinhaltsmodus darf der ce-datacontenttype HTTP-Header NICHT ebenfalls vorhanden sein.

Wichtig

Wenn Sie eigene Attribute (d. h. Erweiterungsattribute) einfügen möchten, wenn Sie den binären Inhaltsmodus verwenden, stellen Sie sicher, dass deren Namen aus Kleinbuchstaben („a“ bis „z“) oder Ziffern („0“ bis „9“) des ASCII-Zeichensatzes bestehen und nicht länger als 20 Zeichen sind. Das heißt, die Namenskonvention für die Benennung von CloudEvents-Kontextattributen ist restriktiver als die der gültigen HTTP Header-Namen. Nicht jeder gültige Name eines HTTP-Headers ist auch ein gültiger Name für ein Erweiterungsattribut.

Die HTTP-Payload ist die Ereignisdaten, die gemäß dem Medientyp in Content-Typecodiert sind.

Eine HTTP-Anforderung, die zum Veröffentlichen eines CloudEvent im Binärmodus für Inhalte verwendet wird, kann wie im folgenden Beispiel aussehen:

POST / HTTP/1.1
HOST mynamespace.eastus-1.eventgrid.azure.net/topics/mytopic
ce-specversion: 1.0
ce-type: com.example.someevent
ce-source: /mycontext
ce-id: A234-1234-1234
ce-time: 2018-04-05T17:31:00Z
ce-comexampleextension1: value
ce-comexampleothervalue: 5
content-type: application/protobuf

Binary data according to protobuf encoding format. No context attributes are included.

Gründe für die Verwendung des binär- oder strukturierten Inhaltsmodus von CloudEvents

Sie können den Modus für strukturierte Inhalte verwenden, wenn Sie einen einfachen Ansatz zum Weiterleiten von CloudEvents über Hops und Protokolle wünschen. Da eine CloudEvents-Instanz im strukturierten Inhaltsmodus die Nachricht zusammen mit den Metadaten enthält, ist es für Clients einfach, sie als Ganzes zu verarbeiten und an andere Systeme weiterzuleiten.

Sie können den Binärinhaltsmodus verwenden, wenn Sie wissen, dass nachgeschaltete Anwendungen nur die Nachricht ohne zusätzliche Informationen benötigen (d. a. die Kontextattribute). Mit dem Modus für strukturierte Inhalte können Sie zwar immer noch die Ereignisdaten (Nachricht) aus dem CloudEvent abrufen, aber es ist einfacher, wenn eine Anwendung für Verbraucher diese Daten nur in der HTTP-Payload hat. Beispielsweise können andere Anwendungen andere Protokolle verwenden und dabei nur an der Kernnachricht interessiert sein, nicht an den Metadaten. Tatsächlich könnten die Metadaten nur für den unmittelbaren ersten Hop relevant sein. In diesem Fall eignet sich die Verwendung der Daten, die Sie abgesehen von den Metadaten austauschen möchten, für eine einfachere Handhabung und Weiterleitung.

Herausgeber

Ein Herausgeber ist die Anwendung, die Ereignisse an Event Grid sendet. Dabei könnte es sich um dieselbe Anwendung handeln, aus der die Ereignisse stammen – die Ereignisquelle. Sie können Ereignisse aus Ihrer eigenen Anwendung veröffentlichen, wenn Sie Namespacethemen verwenden.

Ereignisquellen

Eine Ereignisquelle ist die Quelle, in der das Ereignis auftritt. Jede Ereignisquelle unterstützt einen oder mehrere Ereignistypen. Ihre Anwendung ist beispielsweise die Ereignisquelle für benutzerdefinierte Ereignisse, das Ihr System definiert. Bei Verwendung von Namespacethemen werden Ihre eigenen Anwendungen als Ereignisquellen unterstützt.

Namespaces

Ein Event Grid-Namespace ist ein Verwaltungscontainer für die folgenden Ressourcen:

Resource Unterstütztes Protokoll
Namespacethemen HTTP
Themenbereiche MQTT
Clients MQTT
Clientgruppen MQTT
Zertifizierungsstellenzertifikate MQTT
Berechtigungsbindungen MQTT

Mit einem Azure Event Grid-Namespace können Sie jetzt verwandte Ressourcen gruppieren und als einzelne Einheit in Ihrem Azure-Abonnement verwalten. Sie erhalten einen eindeutigen vollqualifizierten Domänennamen (FQDN).

Ein Namespace macht zwei Endpunkte verfügbar:

  • Einen HTTP-Endpunkt zur Unterstützung allgemeiner Messaginganforderungen mithilfe von Namespacethemen.
  • Einen MQTT-Endpunkt für IoT-Messaging oder -Lösungen, die MQTT verwenden.

Ein Namespace stellt auch DNS-integrierte Netzwerkendpunkte bereit. Außerdem stellt er eine Reihe von Funktionen für die Zugriffskontrolle und die Verwaltung der Netzwerkintegration bereit, wie z. B. die Filterung öffentlicher IP-Eingänge und privater Verbindungen. Er ist auch der Container für verwaltete Identitäten, die für die enthaltenen Ressourcen im Namespace verwendet werden.

Hier finden Sie weitere Informationen zu Namespaces:

  • Namespace ist eine nachverfolgte Ressource mit tags und location Eigenschaften. Sobald er erstellt wurde, kann er unter gefunden resources.azure.comwerden.
  • Der Name des Namespaces kann 3 bis 50 Zeichen lang sein. Er kann alphanumerische Zeichen, einen Bindestrich (-), aber keine Leerzeichen enthalten.
  • Der Name muss pro Region eindeutig sein.
  • Aktuelle unterstützte Regionen: Zentral-USA, Ostasien, Ost-USA, Ost-USA 2, Nordeuropa, Süd-Zentral-USA, Südostasien, VAE Nord-, Westeuropa, West-USA 2, West-USA 3.

Durchsatzeinheiten

Durchsatzeinheiten (TUs) definieren die Kapazität der Eingangs- und Ausgangsereignisrate in Namespaces. Weitere Informationen finden Sie unter Kontingente und Grenzwerte in Azure Event Grid.

Themen

Ein Thema enthält Ereignisse, die in Event Grid veröffentlicht wurden. In der Regel verwenden Sie eine Themenressource für eine Sammlung verwandter Ereignisse. Wir haben häufig auf Themen innerhalb eines Namespace als Namespacethemenverwiesen.

Namespacethemen

Namespacethemen sind Themen, die in einem Event Grid-Namespace erstellt werden. Ihre Anwendung veröffentlicht Ereignisse an einem HTTP-Namespaceendpunkt, der ein Namespacethema angibt, in dem veröffentlichte Ereignisse logisch enthalten sind. Beim Entwerfen Ihrer Anwendung müssen Sie entscheiden, wie viele Themen erstellt werden sollen. Für relativ große Lösungen erstellen Sie für jede Kategorie verwandter Ereignisse ein Namespacethema. Betrachten Sie beispielsweise eine Anwendung, die Benutzerkonten verwaltet, und eine andere Anwendung für Kundenaufträge. Es ist unwahrscheinlich, dass alle Ereignisabonnenten Ereignisse von beiden Anwendungen wünschen. Um Bedenken zu trennen, erstellen Sie zwei Namespacethemen: eins für jede Anwendung. Lassen Sie Ereignisconsumer das Thema entsprechend ihren Anforderungen abonnieren. Für kleine Lösungen empfiehlt es sich ggf., alle Ereignisse an ein Thema zu senden.

Namespacethemen unterstützen die Pullübermittlung und Pushübermittlung. Informationen unter Wann Pull- oder Pushübermittlung verwendet werden sollte helfen Ihnen bei der Entscheidung, ob Pullübermittlung der richtige Ansatz ist, angesichts Ihrer Anforderungen.

Ereignisabonnements

Ein Ereignisabonnement ist eine Konfigurationsressource, die einem einzelnen Thema zugeordnet ist. Ein Ereignisabonnement verwenden Sie unter anderem, um Kriterien für die Ereignisauswahl festzulegen, um die für einen Abonnenten verfügbare Ereignissammlung aus der Gesamtzahl der in einem Thema verfügbaren Ereignisse zu definieren. Sie können Ereignisse nach den Anforderungen der Abonnenten filtern. Sie können beispielsweise Ereignisse nach Ereignistypen filtern. Sie können auch Filterkriterien für Ereignisdateneigenschaften definieren, wenn Sie ein JSON-Objekt als Wert für die data-Eigenschaft verwenden. Weitere Informationen zu Ressourceneigenschaften finden Sie, indem Sie in der Event Grid-REST-API nach Vorgängen auf Steuerungsebene suchen.

Diagramm eines Themas mit zugehörigen Ereignisabonnements

Ein Beispiel zum Erstellen von Abonnements für Namespacethemen finden Sie unter Veröffentlichen und Nutzen von Nachrichten mithilfe von Namespacethemen mithilfe von CLI.

Hinweis

Die Ereignisabonnements unter einem Namespacethema weisen ein vereinfachtes Ressourcenmodell auf, verglichen mit dem für benutzerdefinierte, Domänen-, Partner- und Systemthemen verwendeten Modell (Event Grid Basic). Weitere Informationen finden Sie im Artikel zum Erstellen, Anzeigen und Verwalten von Ereignisabonnements.

Pullübermittlung

Bei der Pullübermittlung stellt Ihre Anwendung eine Verbindung mit dem Event Grid her, um Nachrichten mithilfe von warteschlangenähnlicher Semantik zu lesen. Wenn Anwendungen eine Verbindung mit Event Grid herstellen, um Ereignisse zu nutzen, steuern sie die Ereignisverbrauchsrate und deren Anzeigedauer. Verbraucheranwendungen können bei der Verbindung mit Event Grid auch private Endpunkte verwenden, um Ereignisse über einen privaten IP-Raum zu lesen.

Die Pullübermittlung unterstützt die folgenden Vorgänge zum Lesen von Nachrichten und zum Steuern des Nachrichtenstatus: Empfangen, Bestätigen, Freigeben, Ablehnenund Sperre erneuern. Weitere Informationen finden Sie in der Übersicht über Pullübermittlung.

Datenform beim Empfang von Ereignissen mit Pullübermittlung

Wenn Ereignisse mit Pull Delivery geliefert werden, enthält Event Grid ein Array von Objekten, das wiederum die Objekte event und brokerProperties enthält. Der Wert der Eigenschaft event ist das CloudEvent, das im strukturierten Inhaltsmodus geliefert wird. Das brokerProperties-Objekt enthält das mit dem gelieferten CloudEvent verknüpfte Sperr-Token. Das folgende JSON-Objekt ist eine Beispielantwort von einem Empfangsvorgang, der zwei Ereignisse zurückgibt:

{
    "value": [
        {
            "brokerProperties": {
                "lockToken": "CiYKJDUwNjE4QTFFLUNDODQtNDZBQy1BN0Y4LUE5QkE3NjEwNzQxMxISChDXYS23Z+5Hq754VqQjxywE",
                "deliveryCount": 2
            },
            "event": {
                "specversion": "1.0",
                "id": "A234-1234-1235",
                "source": "/mycontext",
                "time": "2018-04-05T17:31:00Z",
                "type": "com.example.someeventtype",
                "data": "some data"
            }
        },
        {
            "brokerProperties": {
                "lockToken": "CiYKJDUwNjE4QTFFLUNDODQtNDZBQy1BN0Y4LUE5QkE3NjEwNzQxMxISChDLeaL+nRJLNq3/5NXd/T0b",
                "deliveryCount": 1
            },
            "event": {
                "specversion": "1.0",
                "id": "B688-1234-1235",
                "source": "/mycontext",
                "type": "com.example.someeventtype",
                "time": "2018-04-05T17:31:00Z",
                "data": {
                    "somekey" : "value",
                    "someOtherKey" : 9
                }
            }
        }
    ]
}

Pushübermittlung

Mit der Pushübermittlung sendet Event Grid Ereignisse an ein Ziel, das in einem Push-Ereignisabonnement (Übermittlungsmodus in) konfiguriert ist. Sie stellt eine robuste Wiederholungslogik bereit, falls das Ziel keine Ereignisse empfangen kann.

Wichtig

Die Pushübermittlung von Event Grid-Namespaces unterstützt derzeit Azure Event Hubs als Ziel. In Zukunft werden Event Grid-Namespaces weitere Ziele unterstützen (einschließlich aller Ziele, die von Event Grid Basic unterstützt werden).

Event Hubs-Ereignisübermittlung

Event Grid verwendet das Event Hubs-SDK zum Senden von Ereignissen an Event Hubs mithilfe von AMQP. Ereignisse werden als Bytearray mit jedem Element im Array gesendet, das ein CloudEvent enthält.

Push- und Pullübermittlung

Event Grid unterstützt Push- und Pull-Ereignisübermittlung über HTTP. Mit push delivery definieren Sie ein Ziel in einem Ereignisabonnement, einem Webhook oder einem Azure-Dienst, an das Event Grid Ereignisse sendet. Mit der Pullübermittlung stellen Abonnentenanwendungen eine Verbindung mit Event Grid her, um Ereignisse zu nutzen. Die Pull-Lieferung wird für Themen in einem Ereignisraster-Namespace unterstützt.

Wichtig

Event Hubs wird als Ziel für Abonnements für Namespace-Themen unterstützt. In den kommenden Versionen werden Event Grid Namespaces alle derzeit in Event Grid Basic verfügbaren Ziele sowie zusätzliche Ziele unterstützen.

Übersichtsdiagramm der Push- und Pullübermittlung mit der Art beteiligter Ressourcen

Wann sollte die Pushübermittlung gegenüber der Pullübermittlung verwendet werden?

Die folgenden allgemeinen Richtlinien helfen Ihnen bei der Entscheidung, wann die Pull- oder Pushübermittlung verwendet werden sollte.

Pullübermittlung

  • Sie benötigen die volle Kontrolle darüber, wann Ereignisse empfangen werden sollen. So kann es beispielsweise sein, dass Ihre Anwendung nicht die ganze Zeit läuft, nicht stabil genug ist oder dass Sie Daten zu bestimmten Zeiten verarbeiten.
  • Sie benötigen die vollständige Kontrolle über die Ereignisnutzung. Beispielsweise weist ein nachgelagerter Dienst oder eine nachgeschaltete Ebene in Ihrer Consumeranwendung ein Problem auf, das verhindert, dass Sie Ereignisse verarbeiten können. In diesem Fall ermöglicht die Pullübermittlungs-API der Consumer-App, ein bereits gelesenes Ereignis wieder zurück an den Broker freizugeben, sodass es später zugestellt werden kann.
  • Sie möchten beim Empfang von Ereignissen private Links verwenden, was nur mit der Pull-Zustellung, nicht mit der Push-Zustellung möglich ist.
  • Sie können einen Endpunkt nicht verfügbar machen und die Pushübermittlung verwenden, aber Sie können eine Verbindung mit Event Grid herstellen, um Ereignisse zu nutzen.

Pushübermittlung

  • Sie möchten nicht ständig abfragen müssen, um festzustellen, ob eine Systemzustandsänderung eingetreten ist. Stattdessen verwenden Sie Event Grid, damit dieses Ihnen zu dem Zeitpunkt Ereignisse sendet, zu dem Zustandsänderungen auftreten.
  • Sie verfügen über eine Anwendung, die keine ausgehenden Aufrufe tätigen kann. Ihr Unternehmen könnte sich zum Beispiel Sorgen über eine Datenexfiltration machen. Ihre Anwendung kann jedoch Ereignisse über einen öffentlichen Endpunkt empfangen.

Nächste Schritte