Транзакции в микросервисной архитектуре
Еще одна проблема в микросервисной архитектуре после перехода с монолита - это транзакции.
Теперь, вместо единой точки исполнения бизнес-логики, у вас несколько коммуницирующих между собой сервисов, каждый их которых исполняют свою роль в рамках одного сценария. И в любом из них может что-то пойти не так - от недоступности сервиса, до реальной ошибки бизнес-логики.
Для микросервисной архитектуры есть подход распределенных транзакций, но он не лишен изъянов.
Сегодняшняя статья расскажет в том числе про такие изъяны, а также предложит новый вариант решения проблемы транзакций в распределенной системе.