Simplification des architectures pilotées par les événements avec les dernières mises à jour Event Grid

Publié le 29 mai, 2019

Program Manager, Event Grid

Les architectures pilotées par les événements remplacent et distancent de plus en plus les systèmes moins dynamiques basés sur l’interrogation. Elles offrent les avantages de l’informatique serverless aux scénarios IoT, tâches de traitement de données ou travaux d’automatisation de l’infrastructure. L’évolution naturelle des microservices a amené les entreprises du monde entier à adopter une approche pilotée par les événements pour créer de nouvelles expériences dans les applications existantes ou intégrer ces dernières au cloud, en créant chaque jour des scénarios plus puissants et complexes.

Aujourd’hui, nous sommes extrêmement heureux d’annoncer une série de mises à jour Event Grid qui propulsent les applications plus avancées et performantes pilotées par les événements dans le cloud :

  • Préversion publique des événements de télémétrie d’appareils IoT Hub
  • Préversion publique de Service Bus en tant que gestionnaire d’événements
  • Géo-reprise d’activité après sinistre automatique côté serveur
  • Disponibilité générale des domaines d’événements, avec maintenant jusqu’à 100 000 rubriques par domaine
  • Préversion publique de la prise en charge d’événements de 1 Mo
  • API de pagination et de recherche de liste
  • Disponibilité générale de filtres avancés avec une profondeur de filtrage accrue

Intégration étendue avec l’écosystème Azure

L’une des principales fonctionnalités qui nous ont été demandées depuis le lancement de l’intégration d’Azure IoT Hub avec Event Grid concerne les événements de télémétrie d’appareil. Aujourd’hui, nous activons enfin cette fonctionnalité en préversion publique dans toutes les régions publiques, à l’exception des régions suivantes : USA Est, USA Ouest et Europe Ouest. Nous sommes ravis que vous puissiez essayer cette fonctionnalité et développer des solutions IoT plus rationalisées pour votre entreprise.

L’abonnement aux événements de télémétrie d’appareil vous permet d’intégrer facilement les données de vos appareils à votre solution, notamment les applications serverless utilisant Azure Functions ou Azure Logic Apps et d’autres services en utilisant des webhooks, qu’ils soient sur Azure ou non. Cela permet de simplifier les architectures IoT en éliminant le besoin de services supplémentaires qui interrogent la télémétrie des appareils pour un traitement ultérieur.

En publiant les événements de télémétrie d’appareil dans Event Grid, IoT Hub étend les services que vos données peuvent atteindre, au-delà des points de terminaison pris en charge via le routage de messages. Par exemple, vous pouvez automatiser les workflows en aval en créant différents abonnements aux événements de télémétrie d’appareil pour différents types d’appareil, identifiés par la balise jumeau d’appareil, et en déclenchant des applications tierces ou Azure Functions distinctes pour un calcul unique par type d’appareil. En fonction de vos abonnements Event Grid aux événements de télémétrie d’appareil, nous créons une route par défaut dans le hub IoT, en gérant tous vos abonnements Event Grid à la télémétrie d’appareil.

Apprenez-en davantage sur la télémétrie d’appareil IoT Hub dans la documentation et continuez à envoyer vos suggestions via le forum User Voice Azure IoT.

Nous ajoutons également Service Bus en tant que gestionnaire d’événements pour Event Grid dans la préversion publique. Par conséquent, à compter d’aujourd’hui, vous pouvez router vos événements dans Event Grid directement vers les files d’attente Service Bus. Service Bus peut à présent jouer le rôle de source d’événement ou de gestionnaire d’événements, offrant ainsi une expérience plus robuste de la diffusion d’événements et de messages dans des applications d’entreprise distribuées. Il est actuellement en préversion publique et ne fonctionne pas avec les rubriques et les sessions Service Bus, mais avec tous les niveaux de files d’attente Service Bus.

Cela permet d’activer des scénarios de commande et de contrôle dans lesquels vous recevez des événements d’activité sur d’autres services, tels qu’un blob créé, un appareil créé et une tâche finie afin de les transmettre pour un traitement ultérieur.

Apprenez-en davantage sur Service Bus en tant que destination dans la documentation.

Géo-reprise d’activité après sinistre côté serveur

Event Grid intègre à présent la géo-reprise d’activité après sinistre (GeoDR) des métadonnées, applicable à tous les domaines, abonnements aux événements et abonnements existants, et pas seulement aux nouveaux. Cela fournit une résilience considérablement améliorée contre les interruptions de service, tout cela étant complètement managé par notre plateforme. En cas de panne entraînant la défaillance d’une région Azure entière, le service Event Grid synchronise toutes vos métadonnées d’infrastructure de gestion d’événements avec une région appairée et vos nouveaux événements recommencent à se dérouler sans intervention de votre part, ce qui permet d’éviter les interruptions de service automatiquement.

La reprise d’activité après sinistre est généralement mesurée à l’aide de deux métriques :

Le basculement d’Event Grid utilise différents objectifs RPO et RTO pour vos métadonnées (abonnements aux événements, etc.) et vos données (événements). Si vous avez besoin d’une spécification différente de celle décrite ci-dessous, vous pouvez toujours implémenter votre propre basculement côté client à l’aide des API d’intégrité de rubrique.

  • RPO de métadonnées : zéro minutes. Vous avez bien lu. Chaque fois qu’une ressource est créée dans Event Grid, elle est répliquée instantanément dans toutes les régions. En cas de basculement, aucune métadonnée n’est perdue.
  • RTO de métadonnées : bien que cela se produise généralement beaucoup plus rapidement, dans les 60 minutes qui suivent, Event Grid commence à accepter les appels à créer/mettre à jour/supprimer des rubriques et des abonnements.
  • RPO de données : si votre système est en bon état et rattrape le trafic existant au moment du basculement régional, le RPO pour les événements est d’environ 5 minutes.
  • RTO de données : comme les métadonnées, cela se produit généralement beaucoup plus rapidement. Toutefois, Event Grid commence à accepter le nouveau trafic dans les 60 minutes suivant un basculement régional.

Voici la meilleure partie : la géo-reprise d’activité après sinistre (GeoDR) des métadonnées sur Event Grid est gratuite. Elle est incluse dans le prix actuel du service et n’entraîne pas de frais supplémentaires.

Alimenter des charges de travail évoluées pilotées par des événements

Alors que nous voyons des architectures pilotées par les événements plus avancées pour divers scénarios tels que l’IoT, les systèmes CRM ou les finances, nous avons constaté un besoin croissant d’étendre nos capacités pour les applications multi-locataires et les charges de travail traitant de plus grandes quantités de données dans leurs événements.

Les domaines d’événements vous permettent d’organiser l’ensemble de votre infrastructure d’événements sous une même construction, de définir des règles d’authentification détaillées pour chaque rubrique pour les utilisateurs autorisés à s’abonner, et de gérer la publication de tous les événements avec un seul point de terminaison. Les architectures pub-sub classiques sont basées exclusivement sur des rubriques et des abonnements. Toutefois, au fur et à mesure que vous développez des architectures évoluées et haute fidélité, la charge liée à la maintenance augmente de manière exponentielle. Les domaines d’événement vous soulagent en prenant en charge une grande partie de la gestion pour vous.

Aujourd’hui, nous sommes heureux d’annoncer que les domaines d’événements sont à présent disponibles, ce qui vous permet d’avoir 100 000 rubriques par domaine. Voici l’ensemble complet des limites de domaines d’événements avec la disponibilité générale :

  • 100 000 rubriques par domaine d’événements
  • 100 domaines d’événements par abonnement Azure
  • 500 abonnements à des événements par rubrique dans un domaine d’événement
  • 50 abonnements à des événements « firehose » au niveau du domaine d’événements
  • 5 000 événements/seconde dans un domaine d’événements

Comme toujours, si ces limites ne vous conviennent pas, n’hésitez pas à contacter le support en envoyant un ticket ou par e-mail à l’adresse askgrid@microsoft.com

afin que nous puissions vous obtenir une plus grande capacité.

Nous reconnaissons également que 64 Ko ne sont pas toujours suffisants pour les architectures évoluées pilotées par les événements. Ces charges de travail nécessitent la gestion d’événements plus volumineux pour une architecture plus simple. Nous annonçons aujourd’hui la préversion publique des événements jusqu’à 1 Mo.

Aucune modification de configuration n’est requise et cela fonctionne sur les abonnements aux événements existants. De plus, tout ce qui dépasse 64 Ko est toujours couvert par le contrat SLA fourni pour la disponibilité générale. Pour essayer, transmettez simplement des événements plus volumineux ; vous remarquez alors que les événements de plus de 64 Ko sont facturés par incréments de 64 Ko et que la taille limite des lots pour les événements envoyés à Event Grid sous forme de tableau JSON est toujours de 1 Mo au total.

Gestion simplifiée des événements

Vous pouvez avoir des milliers d’abonnements aux événements ou, avec la disponibilité générale des domaines d’événements, des centaines de milliers de rubriques autour de votre abonnement Azure. Pour faciliter la recherche et la gestion de ces ressources, nous avons introduit les API de recherche de liste et de pagination de liste dans Event Grid. Pour plus d’informations, consultez tous les détails dans notre documentation Azure Event Grid.

Les filtres avancés utilisés pour router les messages dans Event Grid sont à présent généralement disponibles, sans restriction du nombre d’objets imbriqués dans votre JSON. Cela permet une plus grande granularité lors du filtrage des événements avant de le transmettre à d’autres services pour un traitement ultérieur, réduisant ainsi le temps de calcul et les ressources nécessaires en évitant d’effectuer ce filtrage ailleurs.

Si vous n’avez pas encore essayé les filtres avancés, vous pouvez utiliser les opérateurs suivants pour n’importe quelle partie de l’événement, ce qui rend les possibilités presque illimitées : StringContains, StringBeginsWith, StringEndsWith, StringIn, StringNotIn, NumberGreaterThan, NumberGreaterThanOrEquals, NumberLessThan, NumberLessThanOrEquals, NumberIn, NumberNotIn, BoolEquals.

Commencez dès aujourd'hui

Comme toujours, nous aimons connaître vos opinions, vos commentaires et vos listes de souhaits une fois que vous avez eu l’occasion d’essayer ces nouvelles fonctionnalités. Vous pouvez commencer maintenant avec les ressources suivantes et nous contacter pour nous transmettre vos commentaires.

  1. Si vous n’en avez pas encore, créez un compte gratuit Azure.
  2. Abonnez-vous aux événements de télémétrie d’appareils IoT Hub avec Event Grid.
  3. Apprenez-en davantage sur l’utilisation de Service Bus en tant que gestionnaire d’événements.
  4. Créez des applications multi-locataires plus puissantes avec les domaines d’événements.
  5. Effectuez des recherches et paginez des milliers et des milliers d’événements avec ces nouvelles API.
  6. Routez uniquement les événements nécessaires au traitement à l’aide de filtres avancés.