Что такое сетка событий Azure?
Сетка событий Azure — это полностью масштабируемая полностью управляемая служба распространения сообщений Pub Sub, которая предлагает гибкие шаблоны потребления сообщений с помощью протоколов MQTT и HTTP. С помощью Сетка событий Azure можно создавать конвейеры данных с данными устройства, интегрировать приложения и создавать бессерверные архитектуры на основе событий.
Сетка событий позволяет клиентам публиковать и подписываться на сообщения по протоколам MQTT версии 3.1.1 и версии 5.0 для поддержки решений Интернета вещей (IoT). С помощью ПРОТОКОЛА HTTP сетка событий позволяет создавать решения на основе событий, в которых служба издателя объявляет об изменениях состояния системы (события) для приложений подписчиков. Сетка событий может быть настроена для отправки событий подписчикам (принудительной доставке) или подписчикам можно подключиться к сетке событий для чтения событий (доставки по запросу). Служба "Сетка событий" поддерживает спецификацию CloudEvents 1.0 для обеспечения взаимодействия между системами.
Основные возможности
Ниже приведены два основных компонента Сетка событий Azure:
Обмен сообщениями MQTT. Устройства и приложения Интернета вещей могут взаимодействовать друг с другом по протоколу MQTT. Сетка событий также может использоваться для маршрутизации сообщений MQTT в службы Azure или пользовательские конечные точки для дальнейшего анализа данных, визуализации или хранилища. Эта интеграция со службами Azure позволяет создавать конвейеры данных, начинающиеся с приема данных с устройств Интернета вещей.
Распределение данных с помощью режимов отправки и извлечения. В любой момент в конвейере данных HTTP-приложения могут использовать сообщения с помощью API отправки или извлечения. Источник данных может включать данные клиентов MQTT, но также включает следующие источники данных, отправляющие события по протоколу HTTP:
- Службы Azure;
- Пользовательские приложения
- Системы внешнего партнера (SaaS)
Механизм принудительной доставки Сетки событий отправляет данные в места назначения, которые включают собственные веб-перехватчики приложений и службы Azure. Давайте подробно рассмотрим следующие две функции:
Обмен сообщениями MQTT
Сетка событий позволяет клиентам взаимодействовать с пользовательскими именами разделов MQTT с помощью модели обмена сообщениями публикации и подписки. Сетка событий поддерживает клиенты, которые публикуют и подписываются на сообщения через MQTT версии 3.1.1, MQTT версии 3.1.1 через WebSockets, MQTT v5 и MQTT версии 5 по webSockets. Сетка событий позволяет отправлять сообщения MQTT в облако для анализа данных, хранения и визуализаций, среди прочего.
Служба "Сетка событий" интегрируется с операциями Интернета вещей Azure для моста с возможностями брокера MQTT MQTT в пограничном регионе с возможностями брокера MQTT сетки событий в облаке. Брокер MQTT Azure IoT — это новый распределенный брокер MQTT для пограничных вычислений, работающий в кластерах Kubernetes с поддержкой Arc. Теперь она доступна в общедоступной предварительной версии в рамках операций Интернета вещей Azure.
Функция брокера MQTT в Сетка событий Azure идеально подходит для реализации автомобильных и мобильных сценариев, среди прочего. См . эталонную архитектуру , чтобы узнать, как создавать безопасные и масштабируемые решения для подключения миллионов транспортных средств к облаку с помощью служб обмена сообщениями и аналитики данных Azure.
Ниже приведены некоторые основные моменты поддержки обмена сообщениями MQTT в Сетка событий Azure:
- Поддержка MQTT версии 3.1.1 и MQTT версии 5.0— используйте любую клиентную библиотеку MQTT открытый код MQTT для взаимодействия со службой.
- Пользовательские разделы с поддержкой подстановочных знаков. Используйте собственную структуру раздела.
- Модель обмена сообщениями о публикации и подписке. Эффективное взаимодействие с использованием шаблонов обмена сообщениями "один ко многим", "многие ко многим" и "один к одному".
- Встроенная облачная интеграция. Маршрутизация сообщений MQTT в службы Azure или пользовательские веб-перехватчики для дальнейшей обработки.
- Гибкая и детализированная модель управления доступом — группирование клиентов и разделов для упрощения управления доступом и использование поддержки переменных в шаблонах разделов для точного управления доступом.
- Методы проверки подлинности брокера MQTT. Проверка подлинности на основе сертификата X.509 является стандартом проверки подлинности в отрасли на устройствах Интернета вещей, Microsoft Entra IDauthentication является стандартом проверки подлинности Azure для приложений и проверки подлинности OAuth 2.0 (JSON Web Token) обеспечивает упрощенный, безопасный и гибкий вариант для клиентов MQTT, которые не подготовлены в Azure.
- Поддержка tls 1.2 и TLS 1.3 . Защита взаимодействия клиента с помощью надежных протоколов шифрования.
- Поддержка нескольких сеансов— подключение приложений к нескольким активным сеансам для обеспечения надежности и масштабируемости.
- MQTT через WebSockets — включение подключения для клиентов в средах, ограниченных брандмауэром.
- Пользовательские доменные имена. Позволяет пользователям назначать собственные доменные имена конечным точкам пространства имен Сетки событий MQTT, повышая безопасность и упрощая настройку клиента.
- События жизненного цикла клиента— позволяют приложениям реагировать на события о состоянии подключения клиента или операциях ресурсов клиента.
Дополнительные сведения о брокере MQTT см. в следующих статьях:
- Обзор
- Публикация и подписка на сообщения MQTT
- Руководство. Маршрутизация сообщений MQTT в Центры событий Azure с помощью разделов пространства имен
- Руководство. Маршрутизация сообщений MQTT в Функции Azure с помощью пользовательских разделов
Обмен сообщениями о событиях (HTTP)
Служба "Сетка событий" поддерживает доставку событий отправки и извлечения с помощью HTTP. При отправке вы определяете назначение в подписке на события, в которую сетка событий отправляет события. При доставке по запросу приложения подписчиков подключаются к сетке событий для использования событий. Доставка по запросу поддерживается для разделов в пространстве имен Сетки событий.
Обработчики событий
В принудительной доставке подписка на события — это универсальный ресурс конфигурации, позволяющий определить обработчик событий или назначение, в которые отправляются события с помощью принудительной доставки. Например, можно отправлять данные в веб-перехватчик, функцию Azure или Центры событий. Полный список поддерживаемых обработчиков событий см. в следующих статье:
- Обработчики событий, поддерживаемые в разделах пространства имен.
- Обработчики событий, поддерживаемые в пользовательских, системных, доменных и партнерских разделах .
Отправка отправки и доставка по запросу
Ниже приведены общие рекомендации, которые помогут вам решить, когда следует использовать доставку по запросу или отправке.
Доставка по запросу
- Вам нужен полный контроль о том, когда будут получать события. Например, приложение может не находиться в течение всего времени, недостаточно стабильно или обрабатывать данные в определенное время.
- Вам нужен полный контроль над потреблением событий. Например, нижестоящей службы или слоя в приложении-получателе возникает проблема, которая предотвращает обработку событий. В этом случае API доставки по запросу позволяет приложению-потребителю освободить уже прочитанное событие обратно брокеру, чтобы его можно было доставить позже.
- Вы хотите использовать частные ссылки при получении событий, что возможно только при доставке по запросу, а не при отправке push-уведомлений.
- У вас нет возможности предоставлять конечную точку и использовать отправку push-уведомлений, но вы можете подключиться к сетке событий для использования событий.
Отправка отправки
- Вы хотите избежать постоянного опроса, чтобы определить, что произошло изменение состояния системы. Вы скорее используете сетку событий для отправки событий во время изменения состояния.
- У вас есть приложение, которое не может выполнять исходящие вызовы. Например, ваша организация может беспокоиться о краже данных. Однако приложение может получать события через общедоступную конечную точку.
Ниже приведены некоторые основные моменты модели HTTP:
- Гибкая модель потребления событий — при использовании HTTP используют события с помощью режима извлечения или отправки.
- Системные события— быстрое выполнение со встроенными событиями службы Azure.
- Собственные события приложения— используйте сетку событий для маршрутизации, фильтрации и надежной доставки пользовательских событий из приложения.
- События партнеров— подписываться на события поставщика SaaS партнера и обрабатывать их в Azure.
- Расширенная фильтрация— фильтрация по типу события или другим атрибутам события, чтобы убедиться, что обработчики событий или приложения-получатели получают только соответствующие события.
- Надежность — функция принудительной доставки обеспечивает механизм повторных попыток в 24 часа с экспоненциальным обратным выходом, чтобы убедиться, что события доставляются. Если вы используете доставку по запросу, приложение имеет полный контроль над потреблением событий.
- Высокая пропускная способность— создание интегрированных решений с помощью сетки событий.
- Пользовательские доменные имена— позволяет пользователям назначать собственные доменные имена конечным точкам пространства имен Сетки событий, повышая безопасность и упрощая настройку клиента.
Дополнительные сведения см. в следующих статьях:
- Обзор доставки по запросу.
- Общие сведения о доставке отправки.
- Основные понятия
- Краткое руководство . Публикация и подписка на события приложения с помощью разделов пространства имен.
Случаи использования
Список вариантов использования, в которых можно использовать Сетка событий Azure, см. в разделе "Варианты использования"
Поддерживаемые регионы
Ниже приведен список регионов, где доступны новые функции брокера MQTT и пространства имен:
Region | Region | Region | Region |
---|---|---|---|
Восточная Австралия | Юго-восточная часть Австралии | Центральная Австралия | Центральная Австралия 2 |
Южная Бразилия | Юго-Восточная Бразилия | Центральная Канада | Восточная Канада |
Центральная Индия | Центральная часть США | Восточная Азия | Восточная часть США |
Восточная часть США 2 | Западная часть США | Центральная Франция | Южная Франция |
Северная Германия | Центрально-Западная Германия | Израиль, центральный регион | Северная Италия |
Восточная Япония | Западная Япония | Республика Корея, центральный регион | Республика Корея, южный регион |
Центральная Мексика | Центрально-северная часть США | Северная Европа | Восточная Норвегия; |
Центральная Польша | Западная часть ЮАР | Северная часть ЮАР | Центрально-южная часть США |
Южная Индия | Юго-Восточная Азия | Центральная Испания | Центральная Швеция |
Южная Швеция | Северная Швейцария | Западная Швейцария | Северная часть ОАЭ; |
Центральная часть ОАЭ | южная часть Соединенного Королевства | западная часть Соединенного Королевства | Западная Европа |
западная часть США 2 | Западная часть США — 3 | Центрально-западная часть США |
Связанный контент
- Обзор обмена сообщениями MQTT
- Обзор доставки по запросу HTTP.
- Общие сведения о доставке push-уведомлений HTTP.