Livraison push d’Azure Event Grid - Concepts
Cet article décrit les principaux concepts d’Event Grid liés à la livraison par envoi (push).
Notes
Pour les concepts Event Grid liés au nouveau modèle de ressource qui utilise des espaces de noms, consultez cet article sur les concepts.
Événements
Un événement correspond à la plus petite quantité d’informations décrivant intégralement quelque chose qui s’est produit dans un système. Chaque événement possède des informations communes telles que la source
de l’événement, la time
à laquelle l’événement a eu lieu et un identificateur unique. Chaque événement comporte également des informations spécifiques qui se rapportent uniquement au type d’événement en question. Par exemple, un événement concernant un fichier en cours de création dans le Stockage Azure a des informations détaillées sur le fichier, notamment la valeur lastTimeModified
. Un événement Event Hubs contient le URL
du fichier Capture. Un événement concernant une nouvelle commande dans votre microservice Orders pourrait avoir un attribut orderId
et un attribut URL
pour la représentation de l’état de la commande.
CloudEvents
Event Grid utilise la spécification Open Standard CloudEvents 1.0 de CNCF à l’aide de la liaison de protocole HTTP au format JSON. CloudEvents est une spécification d’événement extensible avec des extensions documentées pour des exigences spécifiques. Lors de l’utilisation d’Event Grid, CloudEvents est le format d’événement préféré en raison de ses cas d’usage bien documentés (modes de transfert d’événements, formats d’événements, etc.), de son extensibilité et de son interopérabilité améliorée. CloudEvents améliore l’interopérabilité en proposant un format d’événement commun pour la publication et la consommation des événements. Il permet des méthodes standards de routage et des outils uniformes qui gèrent des événements.
Le tableau suivant indique la prise en charge actuelle de la spécification CloudEvents :
Mode de contenu CloudEvents | Pris en charge ? |
---|---|
JSON structuré | Oui |
Binaire | Non |
La taille maximale autorisée pour un événement est de 1 Mo. Les événements de plus de 64 Ko donnent lieu à une facturation par incréments de 64 Ko. Pour connaître les propriétés incluses dans un événement, consultez Schéma CloudEvents.
Autres formats
Event Grid prend également en charge le format de schéma Event Grid propriétaire pour les éditeurs d’événements système. Vous pouvez configurer Event Grid pour remettre des événements au format CloudEvents.
Serveurs de publication
Un éditeur est l’application qui envoie des événements à Event Grid. Il peut s’agir de la même application d’où proviennent les événements, la source des événements. Les services Azure publient des événements sur Event Grid pour annoncer une occurrence dans leur service. Vous pouvez publier des événements à partir de votre propre application. Les organisations qui hébergent des services en dehors d’Azure peuvent publier des événements par le biais d’Event Grid.
Sources d’événement
La source d’un événement désigne l’endroit où l’événement se produit. Chaque source de l’événement est liée à un ou plusieurs types d’événements. Par exemple, le stockage Azure est la source d’événement des événements créés pour l’objet blob. IoT Hub est la source d’événements pour les événements créés par l’appareil. Votre application est la source d’événements pour les événements personnalisés que vous définissez. Les sources d’événements sont responsables de l’envoi des événements à Event Grid.
Partenaires
Un partenaire est un type d’éditeur qui envoie des événements de son système pour les rendre disponibles pour les clients Azure. Un partenaire est généralement un fournisseur SaaS ou ERP qui s’intègre à Azure Event Grid pour aider les clients à réaliser des cas d’utilisation pilotés par des événements sur plusieurs plateformes. Les partenaires peuvent non seulement publier des événements sur Azure Event Grid, mais ils peuvent également recevoir des événements de celui-ci. Ces fonctionnalités sont activées via la fonctionnalité Événements partenaires.
Rubriques
Une rubrique contient les événements qui ont été publiés sur Event Grid. Vous utilisez généralement une ressource de rubrique pour une collection d’événements associés. Pour répondre à certains types d’événements, les abonnés (un service Azure ou autres applications) décident des rubriques auxquelles ils souhaitent s’abonner. Il existe plusieurs types de rubriques : rubriques personnalisées, rubriques système et rubriques de partenaires.
Rubriques personnalisées
Les rubriques personnalisées sont également utilisées avec vos applications. Il s’agissait du premier type de rubrique conçu pour créer des intégrations pilotées par les événements pour des applications personnalisées. En tant que ressource autonome, elles exposent leur propre point de terminaison sur lequel les événements sont publiés.
Les rubriques personnalisées prennent en charge la livraison push. Consultez quand utiliser la livraison de type pull ou push pour vous aider à déterminer si la livraison push est la bonne approche en fonction de vos besoins. Vous pouvez également consulter l’article Rubriques personnalisées.
Rubriques système
Les rubriques sur le système sont des rubriques intégrées fournies par des services Azure, tels que le Stockage Azure, Azure Event Hubs et Azure Service Bus. Vous pouvez créer des rubriques système dans votre abonnement Azure et vous y abonner. Pour plus d’informations, consultez Vue d’ensemble des rubriques système.
Rubriques de partenaire
Les rubriques du partenaire sont un type de rubrique utilisée pour s’abonner aux événements publiés par un partenaire. La fonctionnalité qui permet ce type d’intégration est appelée Événements partenaires. Grâce à cette intégration, vous obtenez une rubrique partenaire où les événements d’un système partenaire sont mis à disposition. Une fois que vous avez une rubrique partenaire, vous créez un abonnement aux événements comme vous le feriez pour tout autre type de rubrique.
Abonnements à des événements
Notes
Pour plus d’informations sur les abonnements aux événements sous une rubrique espace de noms, consultez cet article sur les concepts.
Un abonnement indique à Event Grid quels événements vous souhaitez recevoir sur une rubrique. Lors de la création d’un abonnement, vous spécifiez un point de terminaison pour la gestion de l’événement. Les points de terminaison peuvent être un webhook ou une ressource de service Azure. Vous pouvez filtrer les événements qui sont envoyés au point de terminaison. Vous pouvez filtrer par type d’événement, ou sujet d’événement par exemple. Pour plus d’informations, consultez Abonnements aux événements et Schéma CloudEvents. Les abonnements aux événements pour les rubriques personnalisées, système et de partenaires, ainsi que les domaines, présentent les mêmes propriétés de ressource.
Pour obtenir des exemples de création d’abonnements pour des rubriques personnalisées, système et de partenaires, ainsi que des domaines, consultez :
- Créer des rubriques personnalisées et s’abonner à des événements à l’aide d’Azure CLI
- Exemples Azure PowerShell pour Event Grid
- Modèles Azure Resource Manager pour Event Grid
Pour plus d’informations sur l’obtention de vos abonnements Event Grid actuels, consultez Interroger les abonnements Event Grid.
Expiration de l’abonnement aux événements
Vous pouvez définir un délai d’expiration pour les abonnements aux événements associés aux rubriques personnalisées, système, de partenaires et de domaine, ainsi qu’aux abonnements au domaine. L’abonnement aux événements expire automatiquement après cette date. Définissez une expiration pour les abonnements aux événements qui ne sont nécessaires que pour une durée limitée et que vous ne souhaitez pas avoir à nettoyer ; par exemple, si vous créez un abonnement aux événements pour tester un scénario.
Pour un exemple de configuration d’une expiration, voir S’abonner avec des filtres avancés.
Gestionnaires d’événements
Pour Event Grid, un gestionnaire d’événements désigne l’endroit où l’événement est envoyé lors de l’utilisation de la livraison push. Le gestionnaire effectue des actions supplémentaires pour traiter l’événement. Lors de l’utilisation de la livraison push, Event Grid prend en charge plusieurs types de gestionnaires. Vous pouvez utiliser un service Azure pris en charge ou votre propre webhook comme gestionnaire. En fonction du type de gestionnaire, Event Grid suit différents mécanismes pour garantir la distribution de l’événement. Pour les gestionnaires d’événements HTTP Webhook, l’exécution de l’événement est retentée jusqu'à ce que le gestionnaire renvoie un code d’état de 200 – OK
. Dans le cas de la file d’attente de Stockage Azure, l’exécution des événements est retentée jusqu’à ce que le service de File d’attente traite correctement la transmission de type push du message dans la file d’attente.
Pour plus d’informations sur la livraison d’événements à un gestionnaire Event Grid pris en charge, consultez Gestionnaires d’événements dans Azure Event Grid.
Sécurité
Event Grid assure la sécurité lors de l’abonnement à des rubriques et de la publication d’événements dans des rubriques. Durant l’abonnement, vous devez disposer des autorisations appropriées sur la rubrique Event Grid. Si vous utilisez la livraison push, le gestionnaire d’événements est un service Azure et une identité managée est utilisée pour authentifier Event Grid, l’identité managée doit avoir un rôle RBAC approprié. Par exemple, si vous envoyez des événements à Event Hubs, l’identité managée utilisée dans l’abonnement aux événements doit être membre du rôle Expéditeur de données Event Hubs. Lors de la publication, vous devez disposer d’un jeton SAS ou d’une clé d’authentification pour la rubrique. Pour en savoir plus, consultez la page Sécurité et authentification pour Event Grid.
Remise d’événement
Si Event Grid ne peut pas confirmer qu’un événement a été reçu par le point de terminaison de l’abonné lors de l’utilisation de la livraison push, il procède à une nouvelle distribution de l’événement. Pour plus d’informations, consultez la page Distribution et nouvelle tentative de distribution de messages avec Event Grid.
Traitement par lot
Quand vous utilisez une rubrique personnalisée, les événements doivent toujours être publiés dans un tableau. Il peut s’agir d’un lot d’un pour les scénarios à faible débit.
Définitions des types d’événement inclus
Si vous êtes un partenaire, vous pouvez définir les types d’événements que vous ayez mis à la disposition des clients lorsque vous créez un canal. Avec les définitions de type d’événement inline, les abonnés peuvent facilement filtrer les événements en fonction de leur type d’événement lors de la configuration d’un abonnement aux événements.
Zones de disponibilité
Les zones de disponibilité sont des emplacements physiquement séparés au sein de chaque région Azure qui tolèrent les défaillances locales. Elles sont connectées par un réseau hautes performances avec une latence aller-retour de moins de 2 millisecondes. Chaque zone de disponibilité se compose d’un ou plusieurs centres de données équipés d’une alimentation, d’un système de refroidissement et d’une infrastructure réseau indépendants. Si une zone est affectée, les services, la capacité et la haute disponibilité de la région sont pris en charge par les deux autres zones. Pour plus d’informations sur les zones de disponibilité, consultez Régions et zones de disponibilité.
Étapes suivantes
- Pour une présentation d’Event Grid, consultez À propos d’Event Grid.
- Pour une prise en main en utilisation des rubriques personnalisées, consultez Créer et acheminer des événements personnalisés avec Azure Event Grid.