Architecture

Modèle : Architecture orientée événements

Producteurs, topics Kafka, consommateurs, file de lettres mortes, analytique

Aperçu du modèle Architecture orientée événements

Contenu du modèle

Nœuds
10
Packs
StackDonnées
Catégorie
Architecture

Fonctionne avec l’offre Free : 15 nœuds de diagramme + 150 notes, textes, autocollants et sujets de carte mentale par diagramme.

Dans une architecture orientée événements, les services annoncent ce qui s’est passé et d’autres services réagissent, au lieu de s’appeler directement. Ce modèle montre checkout-service qui publie OrderPlaced dans le topic orders d’un broker d’événements, tandis que payment-service et inventory-service s’abonnent à ce topic.

Payment-service publie ensuite PaymentCaptured dans le topic payments, que consomment shipping-service et notification-service. Les événements impossibles à traiter partent dans une file de lettres mortes, et un entrepôt analytique reçoit tous les événements. Les producteurs sont à gauche, le broker et ses topics au milieu, les consommateurs à droite : le flux se lit de gauche à droite.

Quand l’utiliser

  • Concevoir la réaction des services à des événements métier comme les commandes, les paiements et les expéditions.
  • Montrer quelle équipe publie quel événement et qui en dépend.
  • Revoir la gestion des erreurs : nouvelles tentatives, files de lettres mortes et rejeux.
  • Expliquer un système asynchrone à des personnes habituées aux API requête-réponse.

Mode d’emploi

  1. Renommez les topics et les événements selon votre domaine, avec des noms au passé comme OrderPlaced.

  2. Ajoutez producteurs et consommateurs depuis le pack Stack et reliez-les aux topics par des liens en pointillés.

  3. Ajoutez une file de lettres mortes pour chaque consommateur qui peut échouer, et notez les événements que conserve l’entrepôt analytique.

  4. Partagez le diagramme avec chaque équipe qui publie ou consomme des événements, et enregistrez une version quand un topic ou un événement change.

Questions

Ce modèle est-il lié à Kafka ?

Non. Le cadre du broker indique Kafka parce que c’est courant, mais le même schéma vaut pour RabbitMQ, Amazon EventBridge, Google Cloud Pub/Sub ou Azure Service Bus : renommez le cadre et les topics.

Qu’est-ce qu’une file de lettres mortes ?

Une file de lettres mortes conserve les événements qu’un consommateur n’a pas pu traiter après ses nouvelles tentatives : ils ne sont pas perdus et ne bloquent pas les suivants. Les équipes les examinent, corrigent la cause et les rejouent.

Puis-je montrer événements et flux de requêtes sur un seul diagramme ?

Oui. Utilisez des liens pleins pour les appels directs et des liens en pointillés pour les événements, ou partez du modèle microservices, qui montre une passerelle d’API et un bus d’événements ensemble.

Modèles similaires

Cas d’usage associé

Diagrammes d'architecture cloud

Ouvrez un canevas en une minute

Connectez-vous avec Google ou GitHub. Gratuit pour un siège. Passez à un forfait supérieur quand l’équipe vous rejoint.