Event-Driven Architecture
ELI5 — The Vibe Check
Event-Driven Architecture is like a gossip network. When something happens (order placed!), it broadcasts the news. Anyone who cares (inventory service, email service, analytics) picks it up and reacts. Services don't call each other directly — they just react to events.
Real Talk
Event-Driven Architecture is a software design paradigm where components communicate by producing and consuming events. Decouples producers from consumers, enables asynchronous processing, and improves scalability. Core components: event producers, event channels (queues/topics), and event consumers.
When You'll Hear This
"We use event-driven architecture so services don't need to know about each other." / "The order service publishes an event; the warehouse service handles fulfillment independently."
Related Terms
CQRS
CQRS says: the way you write data and the way you read data should be separate systems. Writing (commands) goes to one model optimized for transactions.
Event Sourcing
Instead of storing 'balance: $100', event sourcing stores 'deposited $200, withdrew $50, withdrew $50'.
Message Broker
A Message Broker is the post office of your microservices world.
Message Queue
A Message Queue is a waiting room for tasks. Producers drop tasks in the queue, consumers pick them up and process them one at a time.
Observer Pattern
Think of a newsletter. You (the publisher/subject) publish content. Your subscribers (observers) automatically get notified when new content arrives.
Pub/Sub (Pub/Sub)
Pub/Sub is like a newspaper service. Publishers write articles and drop them off.