Fundamentals of DevOps and Software Delivery » FAQ
What is an event-driven architecture?
Use SQL when you need strong relational integrity and transactional consistency; use NoSQL for specific scale, access pattern, or schema-flexibility needs. Event-driven architectures and Kafka are useful when decoupling producers/consumers and handling high-throughput asynchronous workflows.
Practical guidance
- Choose data stores based on access patterns, consistency needs, and operations cost.
- Use event-driven patterns when loose coupling and asynchronous processing are priorities.
- Adopt Kafka for durable, high-throughput event streaming with multiple consumers.
- Avoid technology-first decisions; start from domain and reliability requirements.
Relevant chapters from the book