Delen via


Wat is Azure Event Grid?

Azure Event Grid is een uiterst schaalbare en volledig beheerde service voor publiceren/abonneren voor berichtdistributie. Event Grid biedt flexibele patronen voor berichtverbruik en maakt gebruik van de MQTT- en HTTP-protocollen (Message Queuing Telemetry Transport). Met Event Grid kunt u gegevenspijplijnen bouwen met apparaatgegevens, toepassingen integreren en serverloze architecturen bouwen op basis van gebeurtenissen.

Met Event Grid kunnen clients berichten publiceren en abonneren op berichten via de MQTT v3.1.1- en v5.0-protocollen ter ondersteuning van IoT-oplossingen (Internet of Things). Via HTTP kunt u Event Grid gebruiken om gebeurtenisgestuurde oplossingen te bouwen waarbij een uitgeverservice de systeemstatuswijzigingen (gebeurtenissen) aankondigt voor abonneetoepassingen. U kunt Event Grid configureren voor het verzenden van gebeurtenissen naar abonnees (pushlevering) of abonnees kunnen verbinding maken met Event Grid om gebeurtenissen te lezen (pull-levering). Event Grid ondersteunt de CloudEvents 1.0-specificatie om interoperabiliteit tussen systemen te bieden.

Diagram met uitgevers en abonnees met behulp van MQTT- en HTTP-protocollen.

Kernfuncties

Event Grid heeft twee hoofdfuncties:

MQTT-berichten: IoT-apparaten en -toepassingen kunnen met elkaar communiceren via MQTT. U kunt Event Grid ook gebruiken om MQTT-berichten te routeren naar Azure-services of aangepaste eindpunten voor verdere gegevensanalyse, visualisatie of opslag. Door deze integratie met Azure-services te gebruiken, kunt u gegevenspijplijnen bouwen die beginnen met gegevensopname van uw IoT-apparaten.

Gegevensdistributie met behulp van push- en pull-leveringsmodi: Op elk moment in een gegevenspijplijn kunnen HTTP-toepassingen berichten verbruiken met behulp van push- of pull-API's. De bron van de gegevens kan gegevens van MQTT-clients bevatten, maar bevat ook de volgende gegevensbronnen die hun gebeurtenissen via HTTP verzenden:

  • Azure-services
  • Uw aangepaste toepassingen
  • Systemen van externe partners (software als een dienst)

Het Event Grid-mechanisme voor pushlevering verzendt gegevens naar bestemmingen met uw eigen toepassingswebhooks en Azure-services. Hier volgt een overzicht van deze twee functies.

MQTT-berichten

Met Event Grid kunnen uw clients communiceren over aangepaste MQTT-onderwerpnamen met behulp van een berichtenmodel voor publiceren-abonneren. Event Grid ondersteunt clients die berichten publiceren en abonneren op berichten via MQTT v3.1.1, MQTT v3.1.1 via WebSocket, MQTT v5 en MQTT v5 via WebSocket.

Event Grid ondersteunt ook apparaten en services die MQTT-berichten verzenden via HTTPS, wat de integratie met niet-MQTT-clients vereenvoudigt. Met Event Grid kunt u MQTT-berichten verzenden naar de cloud voor gegevensanalyse, opslag en visualisaties, onder andere gebruiksvoorbeelden. Deze functie is momenteel beschikbaar als preview-versie.

Event Grid kan worden geïntegreerd met Azure IoT Operations om de MQTT-brokermogelijkheden aan de rand te overbruggingen met de Event Grid MQTT-brokermogelijkheid in de cloud. Azure IoT MQTT Broker is een nieuwe gedistribueerde MQTT-broker voor edge-computing die wordt uitgevoerd op Kubernetes-clusters met Azure Arc. Deze is nu beschikbaar als onderdeel van Azure IoT Operations.

De MQTT-brokerfunctie in Event Grid is onder andere ideaal voor auto-, mobiliteits- en productiescenario's. Voor meer informatie over het bouwen van veilige en schaalbare oplossingen om miljoenen MQTT-clients te verbinden met de cloud met behulp van Azure Messaging- en Data Analytics-services, raadpleegt u de referentiearchitecturen voor auto's en productie .

Diagram met bidirectionele MQTT-communicatie met uitgevers- en abonneeclients.

Hoogtepunten van ondersteuning voor MQTT-berichten in Event Grid:

  • Ondersteuning voor MQTT v3.1.1 en MQTT v5.0: maakt gebruik van een opensource-MQTT-clientbibliotheek om te communiceren met de service.
  • Aangepaste onderwerpen met ondersteuning voor jokertekens: maakt gebruik van uw eigen onderwerpstructuur.
  • Berichtenmodel publiceren-abonneren: communiceert efficiënt met behulp van een-op-veel-op-een- en een-op-een-berichtpatronen.
  • Ingebouwde cloudintegratie: routeert uw MQTT-berichten naar Azure-services of aangepaste webhooks voor verdere verwerking.
  • Flexibel en gedetailleerdtoegangsbeheermodel: groepen clients en onderwerpen om het beheer van toegangsbeheer te vereenvoudigen. Maakt gebruik van de variabeleondersteuning in onderwerpsjablonen voor gedetailleerd toegangsbeheer.
  • MQTT Broker-verificatiemethoden: maakt gebruik van X.509-certificaatverificatie, een industrieverificatiestandaard voor IoT-apparaten. Maakt gebruik van Microsoft Entra ID-verificatie, een Azure-verificatiestandaard voor toepassingen. Maakt gebruik van flexibele verificatiepatronen, zoals JWT-verificatie (OAuth 2.0 JSON Web Token), die lichtgewicht en veilig is voor MQTT-clients die niet zijn ingericht in Azure. Maakt gebruik van aangepaste webhookverificatie, waardoor externe HTTP-eindpunten (webhooks) MQTT-verbindingen dynamisch kunnen verifiëren. Deze methode maakt gebruik van Entra ID JWT-validatie om beveiligde toegang te garanderen.
  • Ondersteuning voor Transport Layer Security (TLS) 1.2 en TLS 1.3: beveiligt uw clientcommunicatie met behulp van robuuste versleutelingsprotocollen.
  • Ondersteuning voor meerdere sessies: verbindt uw toepassingen met meerdere actieve sessies om betrouwbaarheid en schaalbaarheid te garanderen.
  • MQTT via WebSocket: maakt connectiviteit mogelijk voor clients in firewall-beperkte omgevingen.
  • Aangepaste domeinnamen: hiermee kunnen gebruikers hun eigen domeinnamen toewijzen aan de MQTT-eindpunten van een Event Grid-naamruimte, waardoor de beveiliging wordt verbeterd en de clientconfiguratie wordt vereenvoudigd.
  • Levenscyclusgebeurtenissen van de client: hiermee kunnen toepassingen reageren op gebeurtenissen over de clientverbindingsstatus of de clientresourcebewerkingen.
  • HTTP Publish: hiermee kunnen apparaten en services MQTT-berichten verzenden naar Event Grid via HTTPS, wat de integratie met niet-MQTT-clients vereenvoudigt.
  • MQTT Behouden: Zorgt ervoor dat het laatst bekende bericht in een onderwerp automatisch wordt bezorgd bij nieuwe abonnees, waardoor directe statussynchronisatie mogelijk is.

Zie de volgende artikelen voor meer informatie over de MQTT-broker:

Gebeurtenisberichten (HTTP)

Event Grid ondersteunt de levering van push- en pull-gebeurtenissen met behulp van HTTP. Met pushlevering definieert u een bestemming in een gebeurtenisabonnement waarnaar Event Grid gebeurtenissen verzendt. Met pull-levering maken abonneetoepassingen verbinding met Event Grid om gebeurtenissen te verbruiken. Pull-levering wordt ondersteund voor onderwerpen in een Event Grid-naamruimte.

Diagram met pushlevering en pull-levering met het type betrokken resources.

Event Handlers

In de pushlevering is een gebeurtenisabonnement een algemene configuratieresource die u kunt gebruiken om de gebeurtenis-handler of bestemming te definiëren waarnaar gebeurtenissen worden verzonden met behulp van pushlevering. U kunt bijvoorbeeld gegevens verzenden naar een webhook, een Azure-functie of Event Hubs. Zie voor een volledige lijst met gebeurtenis-handlers die worden ondersteund:

Push-levering versus pull-levering

Aan de hand van de volgende algemene richtlijnen kunt u bepalen wanneer u pull- of pushlevering wilt gebruiken.

Pull-levering

  • U hebt volledige controle nodig over wanneer gebeurtenissen moeten worden ontvangen. Uw toepassing is bijvoorbeeld mogelijk niet altijd up-the-time of niet stabiel genoeg. U kunt gegevens ook alleen op bepaalde momenten verwerken.
  • U hebt volledige controle nodig over het verbruik van gebeurtenissen. Een downstreamservice of laag in uw consumententoepassing kan bijvoorbeeld een probleem hebben waardoor u geen gebeurtenissen kunt verwerken. In dat geval kan de pull-leverings-API de consumenten-app een al lees-gebeurtenis vrijgeven aan de broker voor later leveren.
  • U wilt privékoppelingen gebruiken wanneer u gebeurtenissen ontvangt, wat alleen mogelijk is met de pull-levering, niet de push-levering.
  • U hebt niet de mogelijkheid om een eindpunt beschikbaar te maken en pushlevering te gebruiken, maar u kunt wel verbinding maken met Event Grid om gebeurtenissen te gebruiken.

Push-levering

  • U wilt constante polling voorkomen om te bepalen dat er een wijziging in de systeemstatus is opgetreden. In plaats daarvan wilt u Event Grid gebruiken om gebeurtenissen naar u te verzenden wanneer statuswijzigingen plaatsvinden.
  • U hebt een toepassing die geen uitgaande oproepen kan uitvoeren. Uw organisatie kan zich bijvoorbeeld zorgen maken over gegevensexfiltratie. Uw toepassing kan echter gebeurtenissen ontvangen via een openbaar eindpunt.

Hoogtepunten van HET HTTP-model:

  • Flexibel model voor gebeurtenisverbruik: gebruik gebeurtenissen met behulp van de pull- of pushleveringsmodus wanneer u HTTP gebruikt.
  • Systeemgebeurtenissen: Snel aan de slag met ingebouwde Azure-servicegebeurtenissen.
  • Uw eigen toepassingsgebeurtenissen: Gebruik Event Grid om aangepaste gebeurtenissen van uw app te routeren, filteren en betrouwbaar te leveren.
  • Partnerevenementen: abonneer u op gebeurtenissen van uw Partner SaaS-provider en verwerkt deze in Azure.
  • Geavanceerd filteren: filter op gebeurtenistype of andere gebeurteniskenmerken om ervoor te zorgen dat uw gebeurtenis-handlers of consumenten-apps alleen relevante gebeurtenissen ontvangen.
  • Betrouwbaarheid: Push delivery beschikt over een mechanisme voor opnieuw proberen van 24 uur met exponentieel uitstel om ervoor te zorgen dat gebeurtenissen worden geleverd. Als u pull-levering gebruikt, heeft uw toepassing volledige controle over het verbruik van gebeurtenissen.
  • Hoge doorvoer: bouw geïntegreerde oplossingen met een hoog volume met Event Grid.
  • Aangepaste domeinnamen: sta gebruikers toe hun eigen domeinnamen toe te wijzen aan de HTTP-eindpunten van een Event Grid-naamruimte, wat de beveiliging verbetert en de clientconfiguratie vereenvoudigt.

Raadpleeg voor meer informatie de volgende artikelen:

Gebruiksgevallen

Zie Use cases voor een lijst met gebruiksvoorbeelden waarin u Event Grid kunt gebruiken.

Ondersteunde regio’s

De nieuwe functies voor MQTT-broker- en naamruimteonderwerpen zijn beschikbaar in de volgende regio's.

Regio Regio Regio Regio
Australië - oost Australië - zuidoost Australië - centraal Australië - centraal 2
Brazilië - zuid Brazilië - zuidoost Canada - midden Canada - oost
India - centraal Centrale Verenigde Staten Azië - oost VS - oost
VS - oost 2 VS - west Frankrijk - centraal Frankrijk - zuid
Duitsland - noord Duitsland - west-centraal Israël - centraal Italië - noord
Japan - oost Japan - west Korea - centraal Korea - zuid
Mexico - centraal VS - noord-centraal Europa - noord Noorwegen - oost
Polen - centraal Zuid-Afrika - west Zuid-Afrika - noord VS - zuid-centraal
India - zuid Azië - zuidoost Centraal Spanje Zweden - centraal
Zweden - zuid Zwitserland - noord Zwitserland - west VAE - noord
UAE - centraal Verenigd Koninkrijk Zuid Verenigd Koninkrijk West Europa -west
VS - west 2 US - west 3 VS - west-centraal