Software → Distributed Systems
Event-Driven Architecture
An architecture style where components communicate by producing and reacting to events.
Motivation
Event-driven architecture solves the problem of tightly coupling services that need to react to changes in other parts of the system.
Where it fits
It belongs to software architecture and distributed systems. It uses events, message brokers, queues, and subscribers to decouple components.
Mental model
Instead of asking another service to do work now, a component publishes that something happened. Other components react independently.
Common mistakes
- Using events without clear ownership or schemas.
- Forgetting that asynchronous systems are harder to debug.
- Treating events as a replacement for all synchronous APIs.