3. The Concepts The Forces
Let’s get familiar with some
concepts before getting into
the matter.
The Challenges The Upgrade
Identify a series of escenarios
where the EDA fits as a
candidate architecture.
See the benefits and
challenges that come with
this architecture.
What comes next?
Agenda
9. The Case
Sales System
A commercial sales website where the user registers, and
checks-out orders that need to be paid and shipped.
Each step in the process is an independent microservice with its
own repository
10. Usage 1: Notifications / Process Triggering
Process Finished Notification
One step of the process triggers the next step on the chain
Parallel Processing
Multiple processes can start from the same trigger
Service Buffer
A long processing/not-scalable service may need to buffer its
requests
11. Usage 2: State Transfer
Entity Modified
One microservice/system changed its state and needs to share
it with other systems
Stop Chatty Applications
One microservice needs information from other systems
12. Usage 3: Playback / DB Reconstruction
A DB Crashed
A microservice db crashed and we need to reconstruct it
A DB Needs a New Aggregate Field
We need to calculate a field but we don’t have the info in the db
Auditing
We have to audit the data
14. Challenges
Guaranteed Delivery
All the events MUST be delivered
Process Events in Order
Each consumer may run in multiple instances for scalability this
makes the order a priority plus if service idempotency has not
been implemented
Complex Testing
Given the decoupled nature of the style, a full test is complex to
track