Event Driven Architecture
Event-driven architecture (EDA) is a design principle in which the flow of a system’s operations is driven by the occurrence of events instead of direct communication between services or components. There are many reasons why EDA is a standard architecture for many moderate to large companies. It offers a history of events with the ability to rewind the ability to perform real-time data processing in a scalable and fault-tolerant way. It provides real-time extract-transform-load (ETL) capabilities to have near-instantaneous processing. EDA can be used with microservice architectures as the communication channel or any other architecture.
In this workshop, we will discuss the prevalent principles regarding EDA, and you will gain hands-on experience performing and running standard techniques.
- Key Concepts of Event-Driven Architecture
- Event Sourcing
- Event Streaming
- Multi-tenant Event-Driven Systems
- Producers, Consumers
- Microservice Boundaries
- Stream vs. Table
- Event Notification
- Event Carried State Transfer
- Domain Events
- Tying EDA to Domain Driven Design
- Materialized Views
- Outbox Pattern
- CQRS (Command Query Responsibility Segregation)
- Saga Pattern (Choreography and Orchestrator)
- Avoiding Coupling
- Monitoring Systems
- Cloud-Based EDA
About Daniel Hinojosa
Daniel is a programmer, consultant, instructor, speaker, and recent author. With over 20 years of experience, he does work for private, educational, and government institutions. He is also currently a speaker for No Fluff Just Stuff tour. Daniel loves JVM languages like Java, Groovy, and Scala; but also dabbles with non JVM languages like Haskell, Ruby, Python, LISP, C, C++. He is an avid Pomodoro Technique Practitioner and makes every attempt to learn a new programming language every year. For downtime, he enjoys reading, swimming, Legos, football, and barbecuing.
More About Daniel »