Event-driven architectures (EDAs) are an architectural style of building loosely-coupled software systems that work together by emitting and responding to events. EDA is not a new concept or style of building software. In fact, it's been around for over two decades.
Modern cloud technologies are helping to reinvigorate interest in event-driven systems. Platforms like Apache Kafka and Amazon EventBridge are making it easier to build, run and maintain mission critical event-driven systems that scale with your business. Because EDA is an architectural style, it can be used with any compute platform (containers, serverless, etc.) and a variety of message brokers. While EDAs are applicable to any compute platform, serverless computing like AWS Lambda have a natural affinity with event-driven architectures - they are invoked by events, emit events, and have built-in capabilities for building with events.
EDA on AWS
Event-driven architectures are experiencing a renaissance. Organizations are moving to event-driven architectures for a variety of reasons including:
- Speed & Agility
- Application resiliency
- Independent scalability
While getting started is not difficult, builders may encounter challenges on their journey. It's crucial for software builders, architects and decision makers to understand key concepts, ideas and patterns so that they make the right decisions and trade-off for their company.
This guide is designed to explain concepts, ideas and patterns that are fundamental when building event-driven architectures on AWS. After reading this guide, you should have a firm grasp of EDA fundamentals, applicable patterns and design trade-offs before you embark on building.