Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure Event Grid je vysoce škálovatelná a plně spravovaná služba publikování a odběru pro distribuci zpráv. Event Grid nabízí flexibilní vzory spotřeby zpráv a používá protokoly MQTT (Message Queuing Telemetry Transport) a HTTP. Pomocí Služby Event Grid můžete vytvářet datové kanály s daty zařízení, integrovat aplikace a vytvářet bezserverové architektury řízené událostmi.
Klienti mohou publikovat a odebírat zprávy přes protokoly MQTT v3.1.1 a v5.0 pro podporu řešení Internetu věcí (IoT). Prostřednictvím protokolu HTTP můžete pomocí Event Gridu vytvářet řešení řízená událostmi, kde služba vydavatele oznamuje změny stavu systému (událostí) pro aplikace odběratele. Event Grid můžete nakonfigurovat tak, aby odesílal události předplatitelům (push doručování), nebo se předplatitelé můžou připojit ke službě Event Grid a číst události (pull doručování). Event Grid podporuje specifikaci CloudEvents 1.0 pro zajištění interoperability napříč systémy.
Základní funkce Azure Event Grid
Event Grid má dvě hlavní funkce:
Zasílání zpráv MQTT: Zařízení a aplikace IoT spolu můžou komunikovat přes MQTT. Event Grid můžete také použít ke směrování zpráv MQTT do služeb Azure nebo vlastních koncových bodů pro další analýzu dat, vizualizaci nebo úložiště. Pomocí této integrace se službami Azure můžete vytvářet datové kanály, které začínají příjmem dat ze zařízení IoT.
Distribuce dat pomocí push a pull režimu doručování: V libovolném bodě datového kanálu můžou aplikace HTTP využívat zprávy pomocí push nebo pull API. Zdroj dat může zahrnovat data klientů MQTT, ale obsahuje také následující zdroje dat, které odesílají své události přes PROTOKOL HTTP:
- Služby Azure
- Vaše vlastní aplikace
- Externí partnerský software jako služba (SaaS) systémy
Mechanismus doručování push oznámení služby Event Grid odesílá data do cílů, které zahrnují vaše vlastní webhooky aplikací a služby Azure. Jednotlivé funkce jsou popsané v následujících částech.
Zasílání zpráv MQTT
Vaši klienti mohou komunikovat prostřednictvím vlastních názvů témat MQTT pomocí modelu publikování a odběru zpráv. Event Grid podporuje klienty, kteří publikují a odebírají zprávy přes MQTT v3.1.1, MQTT v3.1.1 přes WebSocket, MQTT v5 a MQTT v5 přes WebSocket.
Event Grid také podporuje zařízení a služby, které odesílají zprávy MQTT přes HTTPS, což zjednodušuje integraci s klienty bez MQTT. MQTT zprávy můžete posílat do cloudu pro analýzu, ukládání a vizualizace dat, mimo jiné případy použití. Tato funkce je ve verzi Preview.
Event Grid se integruje s operacemi Azure IoT, aby propojil schopnost MQTT zprostředkovatele na hranici s schopností MQTT zprostředkovatele Event Grid v cloudu. Azure IoT MQTT broker je distribuovaný MQTT broker pro edge computing, který běží na Kubernetes clusterech s podporou Azure Arc, dostupný jako součást Operace Azure IoT.
Funkce zprostředkovatele MQTT v Event Gridu je ideální mimo jiné pro scénáře automobilového průmyslu, mobility a výroby. Informace o vytváření zabezpečených a škálovatelných řešení pro propojení milionů klientů MQTT s cloudem pomocí služeb zasílání zpráv a datových analýz v Azure najdete v referenčních architekturách pro automobilový průmysl a výrobu .
Hlavní body podpory zasílání zpráv MQTT ve službě Event Grid:
- PodporaMQTT v3.1.1 a MQTT v5.0: Ke komunikaci se službou používá libovolnou opensourcovou klientskou knihovnu MQTT.
- Vlastní témata s podporou zástupných znaků: Používá vlastní strukturu témat.
- Model publikování-odběr zpráv: Efektivně komunikuje pomocí vzorů zasílání zpráv jeden na mnoho, mnoho na jeden a jeden na jednoho.
- Integrovaná cloudová integrace: Směruje zprávy MQTT do služeb Azure nebo vlastních webhooků pro další zpracování.
- Flexibilní a jemně odstupňovanýmodel řízení přístupu: Skupiny klientů a témat pro zjednodušení správy řízení přístupu. Používá podporu proměnných v šablonách témat k jemně odstupňovanému řízení přístupu.
- Metody ověřování zprostředkovatele MQTT: Používá ověřování certifikátů X.509, standardní oborové ověřování pro zařízení IoT. Používá ověřování Microsoft Entra ID, standard ověřování Azure pro aplikace. Používá flexibilní vzory ověřování, jako je ověřování webového tokenu JSON OAuth 2.0 (JWT), což je jednoduché a bezpečné pro klienty MQTT, kteří nejsou zřízeni v Azure. Používá vlastní ověřování webhooku, které umožňuje externími koncovými body HTTP (webhooky) dynamicky ověřovat připojení MQTT. Tato metoda používá k zajištění zabezpečeného přístupu ověřování Microsoft Entra ID JWT.
- Podpora protokolu TLS (Transport Layer Security) 1.2 a TLS 1.3: Zabezpečuje komunikaci klientů pomocí robustních šifrovacích protokolů.
- Podpora více relací: Umožňuje propojit aplikace s více aktivními relacemi, aby se zajistila spolehlivost a škálovatelnost.
- MQTT přes WebSocket: Umožňuje připojení klientů v prostředích s omezenými firewally.
- Vlastní doménová jména: Podporuje přiřazení vlastních domén k koncovým punktům MQTT v jmenném prostoru Event Grid, což zvyšuje bezpečnost a zjednodušuje konfiguraci klienta.
- Události životního cyklu klienta: Podporuje aplikace, které reagují na události týkající se stavu připojení klienta nebo operací s klientskými zdroji.
- HTTP Publish: Podporuje zařízení a služby, které posílají MQTT zprávy do Event Grid přes HTTPS, což zjednodušuje integraci s klienty mimo MQTT.
- MQTT Retain: Zajišťuje, že poslední známá zpráva na tématu se automaticky doručí novým předplatitelům, což umožňuje okamžitou synchronizaci stavu.
- Sdílená odběry: Podporuje více klientů, kteří spotřebovávají zprávy z jednoho odběru jako skupina, přičemž broker distribuuje zprávy mezi nimi pro vyvážené a škálovatelné zpracování.
- Identifikátory předplatného: Podporuje klienty MQTT 5, které označují každé předplatné unikátním číselným ID, což usnadňuje určení, kterému odběru přijatá zpráva odpovídá při správě více odběrů.
Další informace o zprostředkovateli MQTT najdete v následujících článcích:
- Přehled
- Publikování a přihlášení k odběru zpráv MQTT
- Návod: Směrování zpráv MQTT do Azure Event Hubs pomocí témat názvového prostoru
- Kurz: Směrování zpráv MQTT do Azure Functions pomocí vlastních témat
Zasílání zpráv událostí (HTTP)
Event Grid podporuje doručování událostí prostřednictvím push a pull pomocí protokolu HTTP. Při doručování oznámením definujete cíl v rámci odběru událostí a Event Grid odesílá události do tohoto cíle. S doručováním pull se aplikace odběratelů připojují ke službě Event Grid k odběru událostí. Event Grid podporuje pull delivery pro témata v jmenném prostoru.
Obslužné procedury událostí
U push delivery je event subscription obecný konfigurační zdroj, který používáte k definování obslužného nástroje nebo cíle, kam Event Grid odesílá události. Můžete například odesílat data do webhooku, funkce Azure nebo do center událostí. Pro kompletní seznam podporovaných obslužných nástrojů událostí viz:
- Obslužné rutiny událostí, které jsou podporovány v tématech oboru názvů.
- Obslužné rutiny událostí jsou podporovány pro vlastní, systémová, doménová a partnerská témata.
Doručení push vs. doručení pull
Následující obecné pokyny vám pomohou rozhodnout, kdy použít doručení typu pull nebo push.
Příjem na vyžádání
- Potřebujete úplnou kontrolu nad tím, kdy chcete přijímat události. Vaše aplikace například nemusí být neustále vzhůru nebo není dostatečně stabilní. Data můžete zpracovávat také v určitých časech.
- Potřebujete úplnou kontrolu nad zpracováním událostí. Například podřízená služba nebo vrstva v aplikaci příjemce může mít problém, který brání zpracování událostí. V takovém případě může spotřebitelská aplikace použít pull delivery API k uvolnění již přečtené události zpět brokerovi k pozdějšímu doručení.
- Chcete použít soukromé odkazy při příjmu událostí, což je možné pouze při příjmu, nikoli při push doručení.
- Nemůžete zobrazit koncový bod a použít push delivery, ale můžete se připojit k Event Grid a spotřebovávat události.
Doručení notifikací prostřednictvím push
- Chcete se vyhnout konstantnímu dotazování, abyste zjistili, že došlo ke změně stavu systému. Místo toho chcete event Grid použít k odesílání událostí, když dojde ke změnám stavu.
- Máte aplikaci, která nemůže provádět odchozí volání. Vaše organizace se například může zabývat exfiltrací dat. Vaše aplikace ale může přijímat události prostřednictvím veřejného koncového bodu.
Zvýraznění modelu HTTP:
- Flexibilní model spotřeby událostí: Spotřebujte události pomocí režimu pull nebo push doručení při použití protokolu HTTP.
- Systémové události: Začněte pracovat s integrovanými událostmi služby Azure.
- Vlastní události aplikace: Pomocí Event Gridu můžete směrovat, filtrovat a spolehlivě doručovat vlastní události z vaší aplikace.
- Partnerské události: Přihlaste se k odběru událostí poskytovatele SaaS partnera a zpracujte je v Azure.
- Pokročilé filtrování: Filtrování podle typu události nebo jiných atributů událostí, abyste měli jistotu, že obslužné rutiny událostí nebo aplikace příjemců přijímají jenom relevantní události.
- Spolehlivost: Push doručování nabízí mechanismus opakování po dobu 24 hodin s exponenciálním zpožděním, aby se zajistilo doručení událostí. Pokud používáte pull doručování, má vaše aplikace plnou kontrolu nad spotřebou událostí.
- Vysoká propustnost: Vytvářejte integrovaná řešení s velkým objemem pomocí Event Gridu.
- Vlastní doménová jména: Přiřaďte svá vlastní doménová jména HTTP endpointům jmenného prostoru Event Grid, což zvyšuje bezpečnost a zjednodušuje konfiguraci klienta.
Další informace najdete v následujících článcích:
- Přehled vyžádaného doručení
- Přehled push doručení
- Koncepty
- Rychlý průvodce: Jak publikovat a přihlásit se k odběru událostí aplikace pomocí témat oboru názvů
Případy použití
Pro seznam případů použití, kde můžete využít Event Grid, viz Příklady použití.
Podporované oblasti
Funkce MQTT brokera a témat jmenných prostorů jsou dostupné v následujících regionech.
| Oblast | Oblast | Oblast | Oblast |
|---|---|---|---|
| Austrálie – východ | Austrálie – jihovýchod | Austrálie – střed | Austrálie – střed 2 |
| Brazílie – jih | Brazílie – jihovýchod | Kanada – střed | Kanada – východ |
| Indie – střed | Střed USA | Východní Asie | USA – východ |
| USA – východ 2 | USA – západ | Francie – střed | Francie – jih |
| Německo – sever | Německo – středozápad | Izrael – střed | Itálie – sever |
| Japonsko – východ | Japonsko – západ | Korea – střed | Korea – jih |
| Mexiko – střed | Střed USA – sever | Severní Evropa | Norsko – východ |
| Polsko – střed | Jižní Afrika – západ | Jižní Afrika – sever | Střed USA – jih |
| Indie – jih | Jihovýchodní Asie | Španělsko – střed | Švédsko – střed |
| Švédsko – jih | Švýcarsko – sever | Švýcarsko – západ | Spojené arabské emiráty – sever |
| Spojené arabské emiráty – střed | Velká Británie – jih | Velká Británie – západ | Západní Evropa |
| USA – západ 2 | USA – západ 3 | Středozápadní USA | Belgie – střed |