Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Azure Event Grid to wysoce skalowalna i w pełni zarządzana usługa publikowania-subskrybowania na potrzeby dystrybucji komunikatów. Usługa Event Grid oferuje elastyczne wzorce użycia komunikatów i korzysta z protokołów HTTP i Message Queuing Telemetry Transport (MQTT). Usługa Event Grid umożliwia tworzenie potoków danych z danymi urządzenia, integrowanie aplikacji i tworzenie architektur bezserwerowych opartych na zdarzeniach.
Usługa Event Grid umożliwia klientom publikowanie i subskrybowanie komunikatów za pośrednictwem protokołów MQTT w wersji 3.1.1 i 5.0 w celu obsługi rozwiązań Internetu rzeczy (IoT). Za pośrednictwem protokołu HTTP można użyć usługi Event Grid do tworzenia rozwiązań opartych na zdarzeniach, w których usługa wydawcy ogłasza zmiany stanu systemu (zdarzenia) dla aplikacji subskrybentów. Usługę Event Grid można skonfigurować tak, aby wysyłała zdarzenia do subskrybentów (dostarczanie push), lub subskrybenci mogą łączyć się z usługą Event Grid, aby odczytywać zdarzenia (dostarczanie pull). Usługa Event Grid obsługuje specyfikację CloudEvents 1.0 w celu zapewnienia współdziałania między systemami.
Podstawowe funkcje
Usługa Event Grid ma dwie główne funkcje:
Obsługa komunikatów MQTT: urządzenia i aplikacje IoT mogą komunikować się ze sobą za pośrednictwem protokołu MQTT. Za pomocą usługi Event Grid można również kierować komunikaty MQTT do usług platformy Azure lub niestandardowych punktów końcowych w celu dalszej analizy danych, wizualizacji lub magazynu. Korzystając z tej integracji z usługami platformy Azure, można tworzyć potoki danych rozpoczynające się od pozyskiwania danych z urządzeń IoT.
Dystrybucja danych za pomocą metod wypychania i ściągania: W każdym miejscu w potoku danych aplikacje HTTP mogą przetwarzać komunikaty za pomocą interfejsów API wypychania lub ściągania. Źródło danych może obejmować dane klientów MQTT, ale obejmuje również następujące źródła danych, które wysyłają swoje zdarzenia za pośrednictwem protokołu HTTP:
- Usługi platformy Azure
- Twoje aplikacje niestandardowe
- Systemy partnerów zewnętrznych (oprogramowanie jako usługa)
Mechanizm wypychania dostarczania Event Grid wysyła dane do miejsc docelowych, które obejmują webhooki twojej własnej aplikacji oraz usługi platformy Azure. Poniżej przedstawiono te dwie funkcje.
Obsługa komunikatów MQTT
Usługa Event Grid umożliwia klientom komunikowanie się z niestandardowymi nazwami tematów MQTT przy użyciu modelu publikowania-subskrybowania. Usługa Event Grid obsługuje klientów, którzy publikują i subskrybują komunikaty za pośrednictwem protokołu MQTT w wersji 3.1.1, MQTT 3.1.1 za pośrednictwem protokołu WebSocket, MQTT v5 i MQTT v5 za pośrednictwem protokołu WebSocket.
Usługa Event Grid obsługuje również urządzenia i usługi, które wysyłają komunikaty MQTT za pośrednictwem protokołu HTTPS, co upraszcza integrację z klientami innych niż MQTT. Usługa Event Grid umożliwia wysyłanie komunikatów MQTT do chmury na potrzeby analizy danych, przechowywania i wizualizacji, między innymi przypadków użycia. Ta funkcja jest obecnie dostępna w wersji zapoznawczej.
Usługa Event Grid integruje się z operacjami usługi Azure IoT , aby połączyć możliwości brokera MQTT na urządzeniach brzegowych z funkcją brokera MQTT usługi Event Grid w chmurze. Broker MQTT usługi Azure IoT to nowy rozproszony broker MQTT na potrzeby obliczeń brzegowych działających w klastrach Kubernetes z obsługą usługi Azure Arc. Jest ona teraz dostępna w ramach operacji usługi Azure IoT.
Funkcja brokera MQTT w usłudze Event Grid jest idealna między innymi w scenariuszach motoryzacyjnych, mobilnych i produkcyjnych. Aby dowiedzieć się, jak tworzyć bezpieczne i skalowalne rozwiązania umożliwiające łączenie milionów klientów MQTT z chmurą przy użyciu usług azure messaging i data analytics, zobacz architektury referencyjne dotyczące branży motoryzacyjnej i produkcyjnej .
Najważniejsze funkcje obsługi komunikatów MQTT w usłudze Event Grid:
- ObsługaMQTT v3.1.1 i MQTT v5.0: używa dowolnej biblioteki klienta MQTT typu open source do komunikowania się z usługą.
- Tematy niestandardowe z obsługą symboli wieloznacznych: używa własnej struktury tematu.
- Model publikowania i subskrybowania komunikatów: efektywnie komunikuje się przy użyciu wzorców obsługi komunikatów "jeden do wielu", "wiele do jednego" i "jeden do jednego".
- Wbudowana integracja z chmurą: przekierowuje komunikaty MQTT do usług platformy Azure lub niestandardowych webhooków w celu dalszego przetwarzania.
- Elastyczny i precyzyjnymodel kontroli dostępu: grupuje klientów i tematy, aby uprościć zarządzanie kontrolą dostępu. Wykorzystuje wsparcie dla zmiennych w szablonach tematów do precyzyjnej kontroli dostępu.
- Metody uwierzytelniania brokera MQTT: używa uwierzytelniania certyfikatu X.509, standardu uwierzytelniania branżowego dla urządzeń IoT. Używa uwierzytelniania Microsoft Entra ID, standardu uwierzytelniania platformy Azure dla aplikacji. Używa elastycznych wzorców uwierzytelniania, takich jak uwierzytelnianie OAuth 2.0 JSON Web Token (JWT), które jest lekkie i bezpieczne dla klientów MQTT, którzy nie są zarejestrowani na platformie Azure. Używa niestandardowego uwierzytelniania webhook, które umożliwia dynamiczne uwierzytelnianie połączeń MQTT dla zewnętrznych punktów końcowych HTTP (webhooki). Ta metoda używa weryfikacji entra ID JWT w celu zapewnienia bezpiecznego dostępu.
- Obsługa protokołu Transport Layer Security (TLS) 1.2 i TLS 1.3: Zabezpiecza komunikację klienta przy użyciu niezawodnych protokołów szyfrowania.
- Obsługa wielu sesji: łączy aplikacje z wieloma aktywnymi sesjami, aby zapewnić niezawodność i skalowalność.
- Protokół MQTT za pośrednictwem protokołu WebSocket: umożliwia łączność dla klientów w środowiskach z ograniczeniami zapory.
- Niestandardowe nazwy domen: umożliwia użytkownikom przypisywanie własnych nazw domen do punktów końcowych MQTT przestrzeni nazw usługi Event Grid, co zwiększa bezpieczeństwo i upraszcza konfigurację klienta.
- Zdarzenia cyklu życia klienta: umożliwia aplikacjom reagowanie na zdarzenia dotyczące stanu połączenia klienta lub operacji zasobów klienta.
- Publikowanie HTTP: umożliwia urządzeniom i usługom wysyłanie komunikatów MQTT do usługi Event Grid za pośrednictwem protokołu HTTPS, co upraszcza integrację z klientami innych niż MQTT.
- MQTT Retain: Zapewnia, że ostatni znany komunikat w temacie jest automatycznie dostarczany nowym subskrybentom, co umożliwia natychmiastową synchronizację stanu.
Aby uzyskać więcej informacji na temat brokera MQTT, zobacz następujące artykuły:
- Omówienie
- Publikowanie i subskrybowanie komunikatów MQTT
- Samouczek: kierowanie komunikatów MQTT do usługi Azure Event Hubs przy użyciu tematów przestrzeni nazw
- Samouczek: kierowanie komunikatów MQTT do usługi Azure Functions przy użyciu tematów niestandardowych
Przesyłanie komunikatów zdarzeń (HTTP)
Usługa Event Grid obsługuje dostarczanie zdarzeń metodą wypychania i pobierania przy użyciu protokołu HTTP. W przypadku dostarczania push należy zdefiniować docelowe miejsce w subskrypcji zdarzeń, do którego usługa Event Grid wysyła zdarzenia. W przypadku dostarczania pull aplikacje subskrybentów łączą się z usługą Event Grid, aby korzystać z zdarzeń. Dostawa na żądanie jest obsługiwana dla tematów w przestrzeni nazw Event Grid.
Obsługiwacze zdarzeń
W ramach dostarczania wypychanego subskrypcja zdarzeń to ogólny zasób konfiguracji, którego można użyć do zdefiniowania programu obsługi zdarzeń lub miejsca docelowego, do którego zdarzenia są wysyłane przy użyciu dostarczania wypychanego. Możesz na przykład wysyłać dane do elementu webhook, funkcji platformy Azure lub centrów zdarzeń. Aby uzyskać pełną listę obsługiwanych programów obsługi zdarzeń, zobacz:
- Obsługiwacze zdarzeń wspierane w tematach przestrzeni nazw.
- Programy obsługi zdarzeń obsługiwane w tematach niestandardowych, systemowych, domenowych i partnerskich.
Metoda dostarczania typu push a metoda dostarczania typu pull
Ogólne wskazówki poniżej pomagają zdecydować, kiedy używać metody pobierania lub metody wypychania.
Dostarczanie na żądanie
- Potrzebujesz pełnej kontroli nad tym, kiedy odbierać zdarzenia. Na przykład aplikacja może nie działać przez cały czas lub nie być wystarczająco stabilna. Dane mogą być również przetwarzane tylko w określonych godzinach.
- Potrzebujesz pełnej kontroli nad konsumpcją zdarzeń. Na przykład usługa podrzędna lub warstwa w aplikacji konsumenckiej może mieć problem uniemożliwiający przetwarzanie zdarzeń. W takim przypadku API dostarczania pull umożliwia aplikacji konsumenckiej zwolnienie już odczytanego zdarzenia z powrotem brokerowi, w celu późniejszej dostawy.
- Chcesz użyć linków prywatnych przy odbiorze zdarzeń, co jest możliwe tylko w przypadku dostarczenia typu pull, a nie dostarczenia typu push.
- Nie masz możliwości udostępnienia punktu końcowego i używania dostarczania przez wypychanie, ale możesz nawiązać połączenie z usługą Event Grid, aby korzystać z wydarzeń.
Dostarczanie typu push
- Chcesz uniknąć ciągłego sondowania w celu określenia, czy nastąpiła zmiana stanu systemu. Zamiast tego chcesz użyć usługi Event Grid do wysyłania zdarzeń do Ciebie, gdy nastąpią zmiany stanu.
- Masz aplikację, która nie może wykonywać wywołań wychodzących. Na przykład Organizacja może być zaniepokojona eksfiltracją danych. Jednak aplikacja może odbierać zdarzenia za pośrednictwem publicznego punktu końcowego.
Najważniejsze informacje o modelu HTTP:
- Elastyczny model konsumpcji zdarzeń: Korzystaj ze zdarzeń, używając trybu pobierania lub wypychania podczas używania HTTP.
- Zdarzenia systemowe: Rozpocznij pracę szybko za pomocą wbudowanych zdarzeń usługi Azure.
- Własne zdarzenia aplikacji: użyj usługi Event Grid do kierowania, filtrowania i niezawodnego dostarczania zdarzeń niestandardowych z aplikacji.
- Zdarzenia partnerów: subskrybowanie zdarzeń dostawcy SaaS partnera i przetwarzanie ich na platformie Azure.
- Zaawansowane filtrowanie: filtruj według typu zdarzenia lub innych atrybutów zdarzeń, aby upewnić się, że programy obsługi zdarzeń lub aplikacje konsumenckie odbierają tylko odpowiednie zdarzenia.
- Niezawodność: Dostarczanie push zawiera 24-godzinny mechanizm ponawiania z wykładniczym odstępem, aby upewnić się, że zdarzenia są dostarczane. Jeśli używasz dostarczania typu pull, twoja aplikacja ma pełną kontrolę nad przetwarzaniem zdarzeń.
- Wysoka przepływność: twórz rozwiązania zintegrowane o dużej ilości za pomocą usługi Event Grid.
- Niestandardowe nazwy domen: umożliwia użytkownikom przypisywanie własnych nazw domen do punktów końcowych HTTP przestrzeni nazw usługi Event Grid, co zwiększa bezpieczeństwo i upraszcza konfigurację klienta.
Aby uzyskać więcej informacji, zobacz następujące artykuły:
- Przegląd dostarczania typu pull
- Omówienie dostarczania danych push
- Pojęcia
- Szybki przewodnik: publikowanie i subskrybowanie zdarzeń aplikacji za pomocą tematów związanych z przestrzenią nazw
Przypadki użycia
Aby uzyskać listę przypadków użycia usługi Event Grid, zobacz Przypadki użycia.
Obsługiwane regiony
Nowe funkcje brokera i tematów przestrzeni nazw MQTT są dostępne w następujących regionach.
| Region | Region | Region | Region |
|---|---|---|---|
| Australia Wschodnia | Australia Południowo-Wschodnia | Australia Środkowa | Australia Środkowa 2 |
| Brazylia Południowa | Brazylia Południowo-Wschodnia | Kanada Środkowa | Kanada Wschodnia |
| Indie Środkowe | Środkowe stany USA | Azja Wschodnia | Wschodnie stany USA |
| Wschodnie stany USA 2 | Zachodnie stany USA | Francja Środkowa | Francja Południowa |
| Niemcy Północne | Niemcy Środkowo-Zachodnie | Izrael Środkowy | Włochy Północne |
| Japonia Wschodnia | Japonia Zachodnia | Korea Środkowa | Korea Południowa |
| Meksyk Środkowy | Północno-środkowe stany USA | Europa Północna | Norwegia Wschodnia |
| Polska Środkowa | Zachodnia Republika Południowej Afryki | Północna Republika Południowej Afryki | Południowo-środkowe stany USA |
| Indie Południowe | Azja Południowo-Wschodnia | Hiszpania Środkowa | Szwecja Środkowa |
| Szwecja Południowa | Szwajcaria Północna | Szwajcaria Zachodnia | Północne Zjednoczone Emiraty Arabskie |
| Środkowe Zjednoczone Emiraty Arabskie | Południowe Zjednoczone Królestwo | Zachodnie Zjednoczone Królestwo | Europa Zachodnia |
| Zachodnie stany USA 2 | Zachodnie stany USA 3 | Zachodnio-środkowe stany USA | Belgia środkowa |