Введение
1. Знакомство с согласованностью и ее видами
2. Постановка проблемы обеспечения согласованности данных в транзакциях в распределенных системах
3. Особенности функционирования распределённых систем.
3.1 Причины трудностей
3.2 Необходимость соблюдения согласованности данных
3.3 Понятие ACID и принципы атомарности, согласованности, изоляции и долговечности
Основная часть
Двухфазный коммит (2PC)
1. Обзор классической техники координации распределённых транзакций, обеспечивающей атомарность операций.
2. Ограничения двухфазных коммитов в распределённых средах, такие как блокировка ресурсов и риск длительных зависаний.
Паттерн Сага (Saga Pattern)
1. Определение паттерна Сага
2. Компенсирующие транзакции:
3. Ограничения Саги
Совместное применение 2PC и Saga
1. Зачем сочетать два разных подхода и когда это оправдано.
2. Способы объединения паттернов в одном проекте.
3. Технические рекомендации по построению такой гибридной модели транзакций.
Заключение
Выводы
чек-лист применения этих паттернов