Loading...
Systems that react to events as they happen instead of polling and waiting.
Quick Definition
Event-driven architecture is a design pattern where services communicate by producing and reacting to events rather than direct calls. It enables loosely coupled, scalable systems and pairs naturally with serverless, usage-based pricing where cost tracks event volume.
Event-driven architecture is a design style where services communicate by emitting and reacting to events: an order was placed, a file was uploaded, a payment failed. Producers publish events without knowing who listens; consumers subscribe and react independently. The pieces stay loosely coupled and can evolve separately.
The style pairs naturally with microservices and with serverless platforms that charge per execution. Because consumers run only when events occur, well-designed event-driven systems are highly cost-efficient at low and spiky volumes. Nothing idles waiting for work.
Example. When a customer uploads a photo, an event triggers one function to create thumbnails, another to scan for unsafe content, and a third to update the feed. None of these services run, or cost anything, between uploads.
The trade-off is observability. Work flows through queues and topics rather than direct calls, so failures hide in retry loops and dead-letter queues, and a misbehaving producer can trigger an expensive storm of downstream executions. Strong monitoring and cost anomaly detection are essential companions.
Workloads with spiky or unpredictable volume, many independent reactions to the same event, or integrations between loosely related systems.
Runaway event loops and retry storms can multiply executions fast. Idempotent consumers, loop guards, and spend alerts contain the risk.
No. Serverless is a way to run code; event-driven is a way to structure communication. They combine well but are independent choices.