доставка push-уведомлений Сетка событий Azure — основные понятия
В этой статье описываются основные понятия сетки событий, связанные с отправкой отправки.
Примечание.
Основные понятия сетки событий, связанные с новой моделью ресурсов, используюющей пространства имен, см. в этой статье.
События
Событие — это наименьший объем информации, который полностью описывает то, что произошло в системе. Каждое событие имеет общие сведения, такие как source
событие, time
произошло событие и уникальный идентификатор. Каждое событие также содержит определенные сведения, которые относятся к конкретному типу события. Например, событие создания файла в службе хранилища Azure содержит сведения о файле, такие как значение lastTimeModified
. Событие Центров событий содержит URL
файл записи. Событие о новом порядке в микрослужбе Orders может иметь orderId
атрибут и URL
атрибут представления состояния заказа.
Источники облачных
Служба "Сетка событий" использует стандартную спецификацию CloudEvents 1.0 CNCF с привязкой протокола HTTP с форматом JSON. CloudEvents — это расширяемая спецификация событий с документируемыми расширениями для конкретных требований. При использовании Сетки событий CloudEvents является предпочтительным форматом событий из-за его хорошо документированных вариантов использования (режимы передачи событий, форматов событий и т. д.), расширяемость и улучшенная совместимость. CloudEvents улучшает взаимодействие, предоставляя общий формат событий для публикации и использования событий. Он позволяет использовать универсальные средства и стандартные способы маршрутизации и обработки событий.
В следующей таблице показана текущая поддержка спецификации CloudEvents:
CloudEvents con режим палатки | Поддерживается? |
---|---|
Структурированный JSON | Да |
Binary | No |
Максимально допустимый размер события — 1 МБ. Плата за события свыше 64 КБ начисляется с приращением в 64 КБ. Свойства, отправляемые в события, см. в статье Схема CloudEvents.
Другие форматы
Служба "Сетка событий" также поддерживает собственный формат схемы сетки событий для издателей системных событий. Сетка событий можно настроить для доставки событий с помощью формата CloudEvents .
Издатели
Издатель — это приложение, которое отправляет события в сетку событий. Это может быть то же приложение, где произошли события, источник событий. Службы Azure публикуют события в службе "Сетка событий" для объявления вхождения в службу. Вы можете опубликовать события из своего приложения. Организации, на которых размещаются службы за пределами Azure, также могут публиковать события через сетку событий.
Источники событий
Источник события — это место, где оно произошло. С каждым источником события связан один или несколько типов событий. Например, служба хранилища Azure — это источник событий создания больших двоичных объектов. Центр Интернета вещей является источником событий, созданных устройством. Приложение является источником определяемых пользователем событий. Источники событий отвечают за отправку событий в службу "Сетка событий".
Участники
Партнер — это издатель, который отправляет события из своей системы, чтобы сделать их доступными для клиентов Azure. Партнер обычно является поставщиком SaaS или ERP, который интегрируется с Сеткой событий Azure, чтобы помочь клиентам реализовать варианты использования на основе событий на разных платформах. Партнеры могут не только публиковать события в Сетке событий Azure, но и получать события от нее. Эти возможности включены с помощью функции События партнеров.
Разделы
В разделе содержатся события, опубликованные в сетке событий. Обычно для коллекции связанных событий используется ресурс раздела. Чтобы ответить на определенные типы событий, подписчики (служба Azure или другие приложения) решают, какие темы следует подписаться. Существует несколько типов разделов: пользовательские темы, системные темы и партнерские темы.
Пользовательские темы
Пользовательские разделы также являются разделами, которые используются в приложениях. Они были первым типом раздела, предназначенного для создания интеграции на основе событий для пользовательских приложений. В качестве автономного ресурса они предоставляют собственную конечную точку, в которой публикуются события.
Пользовательские разделы поддерживают отправку отправки. Обратитесь к тем , когда следует использовать доставку по запросу или отправке, чтобы помочь вам решить, подходит ли доставка push-уведомлений в соответствии с вашими требованиями. Вы также можете обратиться к статье "Пользовательские разделы".
Системные темы
Системные разделы — это встроенные разделы, предоставляемые службами Azure, такими как служба хранилища Azure, Центры событий Azure и служебная шина Azure. Вы можете создавать системные разделы в подписке Azure и подписываться на них. Подробнее см. в статье Общие сведения о системных разделах.
Партнерские разделы
Партнерский раздел — это раздел, используемый для подписки на события, опубликованные партнером. Функция, которая включает этот тип интеграции, называется События партнеров. Благодаря этой интеграции вы получите партнерский раздел, в котором становятся доступны события из партнерской системы. После получения партнерского раздела вы создадите подписку на события, как и для любого другого типа раздела.
Подписки на события
Примечание.
Сведения о подписках на события в разделе пространства имен см. в этой статье .
Подписка сообщает службе "Сетка событий", какие события в разделе нужно получать. При создании подписки вы предоставляете конечную точку для обработки события. Конечные точки могут быть веб-перехватчиком или ресурсом службы Azure. Вы можете отфильтровать события, отправляемые в конечную точку. Например, можно задать фильтр по типу события или теме события. Дополнительные сведения см. в разделе "Подписки на события" и схему CloudEvents. Подписки на события для пользовательских, системных и партнерских разделов, а также доменов имеют одинаковые свойства ресурсов.
Примеры создания подписок для пользовательских, системных и партнерских тем, а также доменов см. в следующих статьях:
- Создание настраиваемого раздела и подписка на события с помощью Azure CLI
- Примеры Azure PowerShell для службы "Сетка событий"
- Шаблоны Azure Resource Manager для службы "Сетка событий"
Дополнительные сведения см. в статье Запрос к подпискам службы "Сетка событий Azure".
Истечение срока действия подписки на событие
Вы можете задать срок действия подписок на события, связанные с пользовательскими, системными, партнерскими и доменными разделами, а также подписками на домены. После этой даты подписка автоматически перестанет действовать. Задайте срок действия подписки на событие, которая необходима только в течение ограниченного времени и не нужно беспокоиться об очистке этих подписок. Например при создании подписки на события для тестирования сценария может потребоваться задать срок действия.
Чтобы посмотреть пример настройки срока действия, перейдите в раздел Подписка с дополнительными фильтрами.
Обработчики событий
С точки зрения сетки событий обработчик событий — это место, где событие отправляется при отправке push-доставки. Обработчик выполняет последующую обработку полученного события. При использовании принудительной доставки сетка событий поддерживает несколько типов обработчиков. Вы можете использовать поддерживаемую службу Azure или собственный веб-перехватчик в качестве обработчика. В зависимости от типа обработчика служба "Сетка событий" применяет различные механизмы, гарантирующие доставку события. Для обработчиков событий веб-перехватчиков HTTP событие повторяется, пока обработчик не возвращает код состояния 200 – OK
. Для очереди службы хранилища Azure события повторяются, пока служба очередей не выполнит успешно отправку сообщения в очередь.
Сведения о доставки событий в любой из поддерживаемых обработчиков службы "Сетка событий" см. в статье Обработчики событий в службе "Сетка событий Azure".
Безопасность
Сетка событий обеспечивает безопасность подписки на разделы и публикацию событий в темы. При подписке необходимо иметь соответствующие разрешения в разделе "Сетка событий". При использовании принудительной доставки обработчик событий — это служба Azure, а управляемое удостоверение используется для проверки подлинности сетки событий, управляемое удостоверение должно иметь соответствующую роль RBAC. Например, при отправке событий в Центры событий управляемое удостоверение, используемое в подписке на события, должно быть членом роли отправителя данных Центров событий. При публикации необходимо пройти аутентификацию на основе маркера SAS или ключа для раздела. Дополнительные сведения см. в разделе Сетка событий: безопасность и проверка подлинности.
Доставка событий
Если служба "Сетка событий" не может подтвердить, что событие получено конечной точкой подписчика при использовании принудительной доставки, оно переопределит событие. Дополнительные сведения см. в разделе Доставка и повторные попытки доставки сообщений сетки событий.
Пакетная обработка
Если применяется пользовательский раздел, события всегда нужно публиковать в массиве. Это может быть пакет из одного для сценариев с низкой пропускной способностью.
Встроенные определения типов событий
Если вы являетесь партнером, вы можете определить типы событий, которые вы делаете доступными для клиентов при создании канала. С помощью встроенных определений типов событий подписчики могут легко фильтровать события с учетом типа события при настройке подписки на события.
Зоны доступности
Зоны доступности Azure — это физически разделенные расположения в пределах одного региона Azure, которые устойчивы к локальным сбоям. Они подключены высокопроизводительной сетью с задержкой кругового пути менее 2 миллисекунда. Каждая зона доступности состоит из одного или нескольких центров обработки данных, оснащенных независимой мощностью, охлаждением и сетевой инфраструктурой. Если затрагивается одна зона, региональные службы, емкость и высокий уровень доступности поддерживаются оставшимися двумя зонами. Дополнительные сведения о зонах доступности см. в разделе "Регионы и зоны доступности".
Следующие шаги
- Общие сведения о службе "Сетка событий" см. в разделе Общие сведения о службе "Сетка событий Azure".
- Чтобы приступить к работе с пользовательскими разделами, см. статью "Создание и маршрутизация пользовательских событий с помощью Сетка событий Azure".