Delen via


Wat is Azure Event Grid?

Azure Event Grid is een zeer schaalbare, volledig beheerde Pub Sub-berichtendistributieservice die flexibele berichtverbruikspatronen biedt met behulp van de MQTT- en HTTP-protocollen. Met Azure 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). Met Behulp van HTTP kunt u met Event Grid gebeurtenisgestuurde oplossingen bouwen, waarbij een uitgeverservice wijzigingen (gebeurtenissen) in de systeemstatus aankondigt aan abonneetoepassingen. Event Grid kan worden geconfigureerd 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 CloudEvents 1.0-specificatie om interoperabiliteit tussen systemen te bieden.

Diagram op hoog niveau van Event Grid waarin uitgevers en abonnees worden weergegeven met behulp van MQTT- en HTTP-protocollen.

Kernfuncties

Dit zijn de twee belangrijkste functies van Azure Event Grid:

MQTT-berichten. IoT-apparaten en -toepassingen kunnen met elkaar communiceren via MQTT. Event Grid kan ook worden gebruikt om MQTT-berichten te routeren naar Azure-services of aangepaste eindpunten voor verdere gegevensanalyse, visualisatie of opslag. Met deze integratie met Azure-services 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 gebruiken 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
  • SaaS-systemen (Externe partner)

Het pushleveringsmechanisme van Event Grid verzendt gegevens naar bestemmingen met uw eigen toepassingswebhooks en Azure-services. Laten we eens kijken naar 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 WebSockets, MQTT v5 en MQTT v5 via WebSockets. Met Event Grid kunt u MQTT-berichten verzenden naar de cloud voor gegevensanalyse, opslag en visualisaties, onder andere gebruiksvoorbeelden.

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

De MQTT-brokerfunctie in Azure Event Grid is ideaal voor de implementatie van auto- en mobiliteitsscenario's, onder andere. Zie de referentiearchitectuur voor meer informatie over het bouwen van veilige en schaalbare oplossingen voor het verbinden van miljoenen voertuigen met de cloud, met behulp van de berichten- en gegevensanalyseservices van Azure.

Diagram op hoog niveau van Event Grid met bidirectionele MQTT-communicatie met uitgevers- en abonneeclients.

Hier volgen enkele hoogtepunten van de ondersteuning voor MQTT-berichten in Azure Event Grid:

  • Ondersteuning voor MQTT v3.1.1 en MQTT v5.0 : gebruik een opensource-MQTT-clientbibliotheek om met de service te communiceren.
  • Aangepaste onderwerpen met ondersteuning voor jokertekens- Gebruik uw eigen onderwerpstructuur.
  • Berichtenmodel publiceren-abonneren: efficiënt communiceren met behulp van één-op-veel-, veel-op-een- en een-op-een-berichtpatronen.
  • Ingebouwde cloudintegratie : routeer uw MQTT-berichten naar Azure-services of aangepaste webhooks voor verdere verwerking.
  • Flexibel en gedetailleerd toegangsbeheermodel : groepeer clients en onderwerpen om het beheer van toegangsbeheer te vereenvoudigen en gebruik de variabeleondersteuning in onderwerpsjablonen voor een gedetailleerd toegangsbeheer.
  • MQTT Broker-verificatiemethoden: X.509-certificaatverificatie is de industrieverificatiestandaard in IoT-apparaten, Microsoft Entra IDauthentication is de verificatiestandaard van Azure voor toepassingen en OAuth 2.0-verificatie (JSON Web Token) biedt een lichtgewicht, veilige en flexibele optie voor MQTT-clients die niet zijn ingericht in Azure.
  • Ondersteuning voor Transport Layer Security (TLS) 1.2 en TLS 1.3: beveilig uw clientcommunicatie met behulp van robuuste versleutelingsprotocollen.
  • Ondersteuning voor meerdere sessies: verbind uw toepassingen met meerdere actieve sessies om betrouwbaarheid en schaalbaarheid te garanderen.
  • MQTT via WebSockets: connectiviteit inschakelen voor clients in firewall-beperkte omgevingen.
  • Aangepaste domeinnamen: hiermee kunnen gebruikers hun eigen domeinnamen toewijzen aan de MQTT-eindpunten van de Event Grid-naamruimte, waardoor de beveiliging wordt verbeterd en de clientconfiguratie wordt vereenvoudigd.
  • Gebeurtenissen in de levenscyclus van de client: hiermee kunnen toepassingen reageren op gebeurtenissen over de clientverbindingsstatus of de clientresourcebewerkingen.

Zie de volgende artikelen voor meer informatie over 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 op hoog niveau met pushlevering en pull-levering met het type betrokken resources.

Event Handlers

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

Push-levering versus pull-levering

Hier volgen algemene richtlijnen om u te helpen 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, niet stabiel genoeg of u verwerkt gegevens op bepaalde momenten.
  • U hebt volledige controle nodig over het verbruik van gebeurtenissen. Een downstreamservice of laag in uw consumententoepassing heeft bijvoorbeeld een probleem 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, zodat deze later kan worden geleverd.
  • U wilt privékoppelingen gebruiken bij het ontvangen van gebeurtenissen, 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. U gebruikt Event Grid liever om gebeurtenissen naar u te verzenden op het moment dat de 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.

Hier volgen enkele hoogtepunten van het HTTP-model:

  • Flexibel model voor gebeurtenisverbruik: wanneer u HTTP gebruikt, gebruikt u gebeurtenissen met behulp van de pull- of pushleveringsmodus.
  • 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.
  • Partner-gebeurtenissen: 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: pushlevering biedt 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: hiermee kunnen gebruikers hun eigen domeinnamen toewijzen aan de HTTP-eindpunten van de Event Grid-naamruimte, waardoor de beveiliging wordt verbeterd en de clientconfiguratie wordt vereenvoudigd.

Raadpleeg voor meer informatie de volgende artikelen:

Gebruiksgevallen

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

Ondersteunde regio’s

Hier volgt de lijst met regio's waar de nieuwe functies voor MQTT-broker- en naamruimteonderwerpen beschikbaar zijn:

Region Region Region Region
Australië - oost Australië - zuidoost Australië - centraal Australië - centraal 2
Brazilië - zuid Brazilië - zuidoost Canada - midden Canada - oost
India - centraal Central US 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