This architecture emphasizes the sequence of events and their response triggers (asynch, real-time processing)
Event-Driven Architecture (EDA)
This allows systems to communicate with one another, and react to events. This enables decoupled, asynchronous and real-time processing
Event-Driven Architecture (EDA)
These are the 5 principles of EDA
This principle of EDA are the components that generate events (internal & external)
Event Producers
This principle of EDA are components that subscribe to events and react to them, triggering additional processes
Event Consumers
This principle of EDA is the communication path between producers and consumers
Event Channels
This principle of EDA involve message queues, and Pub/Sub
Event Channels
This principle of EDA determines what to do based on event data, to trigger relevant actions in real-time or batch-oriented fashion
Event Processing
This principle of EDA is the infra and tools necessary to perform EDA, provided by event-driven middleware
Event-Driven Middleware
These are 5 examples of EDA
This example of EDA processes huge amounts of sensor data in real-time to trigger actions (e.g. home monitoring)
Internet of Things (IoT)
This example of EDA rapidly responds to changes in market price, trade executions, or order cancellations
Financial Trading Systems
This example of EDA allows for real-time tracking of goods, inventory levels, and vehicle locations. Instantly trigger restocks, and respond to delays
Logistic and Supply Chain Management
This example of EDA have user actions that generate events asynchronously updating feeds, push notifs, and trigger analytics without slowing user interface
Social Media and Notifications
This example of EDA have disparate applications that communicate by exchanging events rather than direct requests, and enable loose coupling to allow new systems to be added without disrupting existing ones
Distributed System Integration
This example of EDA include legacy, cloud and SaaS disparate applications
Distributed System Integration
This is a particular architectural style that organizes an application as a collection of individual services that are small and independent
Microservices Architecture
In here, each service is geared towards a certain business capability, and can be independently developed, deployed and scaled
Microservices Architecture
These are the 5 Principles of Microservice Architecture
This principle of Microservices Architecture have services operate on their own without external intervention, flexible in scaling
Service Independence
This principle of Microservices Architecture make sure each service is responsible for one specific business capability
Single Responsibility
This principle of Microservices Architecture uses lightweight protocols to communicate
Loose Coupling
Examples of lightweight protocols that loose coupling uses to communicate
HTTP/REST or messaging systems
This principle of Microservices Architecture make sure each service has its own database or data store, to prevent a single point of failure
Independent Data Management