The 4th pattern to build microservices is to use Lightweight Frameworks. Lightweight Frameworks provide similar functionality to Heavyweight Frameworks, but they heavily rely on: the event broker the container management system (CMS) In many cases they exceed Heavyweight Frameworks. Different apps can use any/different resources from the cluster which are better fit their needs. While still provide Scaling and Recovering from Failures (again by heavily relying on event broker and CMS).
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.