Container View for the simple Event Driven Communication Microservices Example
May 17, 2025 ยท View on GitHub
Diagram

Description
Shows the containers of the simple Microservices Example and their event driven communication.
Documentation
With 'Event Driven Architecture', the services communicate by publishing and subscribing to topics. The communication is asynchronous and the services are temporarily decoupled. The orchestration of the process is done by the connection of the services to the topics and the event processing policies on each service.
This architecture is more resilient to changes and failures. A service can be added or removed without affecting the other services. Events are stored in the topic and will be processed when the service is up.
The process could be reconfigured by changing the connections to the topics and the policies. This is also called a 'Pipes and Filters' architecture.
Containers
| Container | Description |
|---|---|
| Inventory Service | Handles inventory |
| Inventory Topic | Inventory Events |
| Notification Service | Handles notifications |
| Order Service | Handles orders |
| Order Topic | Order Events |
| Payment Service | Handles payments |
| Payment Topic | Payment Events |
| Shipping Service | Handles shipping |
| Shipping Topic | Shipping Events |
Asynchronous Publish/Produce
| From | Name | To | Technology | Description |
|---|---|---|---|---|
| Inventory Service | publish | Inventory Topic | Kafka | InventoryProcessedEvent, InventoryOutOfStockEvent |
| Payment Service | publish | Payment Topic | Kafka | PaymentProcessedEvent, PaymentFailedEvent |
| Order Service | publish | Order Topic | Kafka | OrderProcessedEvent, OrderCancelledEvent |
| Shipping Service | publish | Shipping Topic | Kafka | ShippingProcessedEvent, ShippingFailedEvent |
Asynchronous Subscribe/Consume
| From | Name | To | Technology | Description |
|---|---|---|---|---|
| Notification Service | subscribe | Inventory Topic | Kafka | InventoryProcessedEvent, InventoryOutOfStockEvent |
| Inventory Service | subscribe | Order Topic | Kafka | OrderProcessedEvent, OrderCancelledEvent |
| Payment Service | subscribe | Inventory Topic | Kafka | InventoryProcessedEvent |
| Notification Service | subscribe | Payment Topic | Kafka | PaymentProcessedEvent, PaymentFailedEvent |
| Shipping Service | subscribe | Payment Topic | Kafka | PaymentProcessedEvent, PaymentFailedEvent |
| Notification Service | subscribe | Shipping Topic | Kafka | ShippingProcessedEvent, ShippingFailedEvent |
| Notification Service | subscribe | Order Topic | Kafka | OrderProcessedEvent, OrderCancelledEvent |
Navigation
(generated by Overarch with template docs/view.md.cmb)