Two-phased commits are an “architectural smell”
One of the common challenges in designing a microservice architecture is how to handle distributed transactions across multiple services. A distributed transaction is a transaction that involves multiple resources, such as databases, message…