Overview of DTM Distributed Transactions Manager
mainDTM is a distributed transaction framework designed to provide eventual data consistency across multiple services. It supports several transaction patterns including:
- SAGA: For long-running transactions with compensating actions.
- TCC (Try-Confirm-Cancel): For high-consistency requirements.
- XA: For distributed transactions following the XA standard.
- Workflow: For complex, multi-step transaction orchestration.
- Outbox / 2-phase messages: For reliable event publishing and subscription.
DTM supports multiple languages (Go, Java, PHP, C#, Python, Nodejs) and various storage engines such as MySQL/MariaDB, Redis, BoltDB, and MongoDB.