recall

← recall

event-driven concept

Components react to events emitted by other components instead of being called directly.

Components react to events emitted by other components instead of being called directly. Producers don't know who's listening; consumers don't know who emitted. Decouples services, enables fan-out to multiple consumers, supports async processing. Tradeoffs are real: distributed tracing is harder, ordering needs explicit handling, duplicate delivery requires idempotent consumers, and eventual consistency replaces synchronous guarantees. Most modern microservice architectures land somewhere on a spectrum between request/response and event-driven, not purely one.

Producers emit events, consumers react. Decouples services, enables async processing, supports fan-out. Tradeoffs: harder to trace, eventual consistency, ordering complications.

see also

aliases: event-driven architecture, EDA

topics: architecture

references: