Microservices: The Saga Pattern
Introduction
Earlier, with monolithic applications, the atomicity of a transaction was taken for granted, as it could be handled by a database without much effort. With more and more distributed applications nowadays — such as applications developed with a microservice architecture using the Database per Microservice design pattern — maintaining consistency across services is increasingly a challenge.