Распределённые транзакции

Распределённые транзакции, image #1

На собеседованиях на позицию middle/senior разработчика часто задают вопросы по распределенным транзакциям в микросервисной архитектуре.

Мой коллега однажды посоветовал отличную статью со сравнением основных паттернов для решения проблем распределённых транзакций.

Я проработал статью и подготовил конспект простыми словами, местами дополнил информацией из других источников и полезными ссылками.

Перед тем как начать, делюсь ссылкой на мой блог в телеграм, где я раньше всего публикую материалы по java разработке и личной эффективности.

Оглавление

1.Проблема двойной записи

2.Модульный монолит

3. Двухфазный коммит

4. Оркестрация SAGA

5. Хореография SAGA

- Хореография с двойной записью

- Хореография без двойной записи

- Хореография с Debezium

- Хореография с event sourcing

6. Parallel pipelines

- Listen to yourself

7. Общие выводы по всем паттернам

В статье рассматриваются общие подходы к решению проблемы двойной записи, когда два микросервиса должны гарантировано, атомарно записать информацию в бд.

Каждый из рассмотренных вариантов имеет свои достоинства и недостатки, и может быть применен в промышленной разработке.

Далее: https://habr.com/ru/articles/769102/

#transaction #java #habr

49 views·2 shares