Software Architecture - MacKittipat/note-developer GitHub Wiki
Event-driven architecture
- Uses events to trigger and communicate between decoupled services.
- Have three key components: event producers, event routers, and event consumers.
- Producer services and consumer services are decoupled, which allows them to be scaled, updated, and deployed independently.
- Decouple services by using event to trigger communication between them
Event-driven architecture models
- Pub/sub model
- Event streaming model
Benefit
- Scale and fail independently
- No point-to-point integrations. It's easy to add new consumers to the system.
Trade off
References