Event-Driven Architecture
Systems that communicate by producing and consuming events
Last updated: 8/15/2025
Event-Driven Architecture
In event-driven systems, services publish events when something changes and other services react by consuming those events. This decouples producers and consumers and enables near real-time workflows.
When it fits
- High-volume, real-time updates or workflows
- You want to minimise direct dependencies between services
Risks
- Event ordering, idempotency and debugging distributed flows
- Event schema evolution and replay strategies
Real-world examples
- Ride-sharing platforms stream trip, location and payment events through Kafka or Kinesis to power pricing and ETAs
- E-commerce platforms publish order and inventory events to update fulfilment, notifications and analytics in near real time
Practical tips
- Define clear event contracts and version them
- Make consumers idempotent and design for at-least-once delivery