Варианты реализации SAGA
SAGA - один из первых шаблонов для реализации транзакционной логики в распределенных системах. Он появился раньше чем микросервисная архитектура, но особую популярность приобрел вместе с микросервисами.
Идея шаблона сводится к идии "целостность в конечном итоге", он состоит из цепочки нод, которые имеют свое состояние и работают по транзакционной модели ACID, каждая из нод либо выполняет транзакцию, либо инициирует цепочку отмены транзакции.
Взаимосвязь нод строится на базе событий, которые могут распространяться как синхронно, так и асинхронно.
Варианты реализации
Duration: 7
- Атомарность vs Модульность
- Синхронность vs Асинхронность
- Оркестрация vs Хореография
Существует восемь основных комбинаций этих свойств, которые дают разные варианты реализации SAGA:
- атомарность + синхронность + оркестрация
- атомарность + асинхронность + оркестрация
- модульность + синхронность + оркестрация
- модульность + асинхронность + оркестрация
- атомарность + синхронность + хореография
- атомарность + асинхронность + хореография
- модульность + синхронность + хореография
- модульность + асинхронность + хореография
Атомарность + синхронность + оркестрация
Duration: 7
Атомарность + асинхронность + оркестрация
Duration: 7
Модульность + синхронность + оркестрация
Duration: 7
Модульность + асинхронность + оркестрация
Duration: 7
Атомарность + синхронность + хореография
Duration: 7
Атомарность + асинхронность + хореография
Duration: 7
Модульность + синхронность + хореография
Duration: 7
Модульность + асинхронность + хореография
Duration: 7