Building Event-Driven Microservices - Chapter 6 - Deterministic Stream Processing
Deterministic Stream Processing is a foundation for building scalable event-driven systems. The lack of determinism can be very painful for the business (imagine lost financial transactions, missed alerts, wrong data aggregation).
There are certain tips and tricks on how to implement determinism. Keywords are:
- Timestamps
- Event Scheduling
- Watermarks
- Stream Time
Also you should understand the nature of Out-of-Order and Late-Arriving Events. And strategies for handling them.
Also need to support reprocessing.
And need to consider Intermittent Failures.
All of these is disclosed in the Chapter 6 of the book we are currently studying:
“Building Event-Driven Microservices: Leveraging Organizational Data at Scale” by Adam Bellemare
Sharing my mind map with all the details as usual:
See also:
- Building Event-Driven Microservices - Chapter 12 - Lightweight Framework Microservices
- Building Event-Driven Microservices - Chapter 16 Deploying Event-Driven Microservices
- Building Event-Driven Microservices - Chapter 15 - Testing Event Driven Microservices.
- Building Event-Driven Microservices - Chapter 14 - Supportive Tooling
- Building Event-Driven Microservices - Chapter 13 - Integrating Event-Driven and Request-Response Microservices