Trigger compensating transactions to undo changes in a multi-step flow when business rules are violated downstream.
You are building a reactive, cloud-native system that is composed of bounded isolated components. You employ the Cloud Native Databases Per Component and Event Streaming patterns as the backbone of the system. You atomically produce events based on the Database-First variant of the Event Sourcing pattern and you leverage the CQRS pattern to isolate components from upstream failures and make them responsive, resilient, and elastic. You implement business processes based on the Event Collaboration and/or Event Orchestration patterns. The Data Lake pattern provides a system-wide audit trail of all events emitted by the system and, following the Stream Circuit Breaker pattern, your stream processors properly handle technical failures.
The Event Collaboration and Event Orchestration patterns provide the ability to leverage asynchronous inter-component...