Что такое Saga, какие бывают типы и использовали ли вы её?

Saga — последовательность локальных транзакций разных сервисов с компенсирующими действиями при неудаче. Основные варианты — оркестрация и хореография.

Короткий ответ

Что ответить на собеседовании

Saga — последовательность локальных транзакций разных сервисов с компенсирующими действиями при неудаче. Основные варианты — оркестрация и хореография.

Подробный разбор

Ответ с пояснениями

Saga — последовательность локальных транзакций разных сервисов с компенсирующими действиями при неудаче. Основные варианты — оркестрация и хореография.

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

Компенсация — бизнес-действие, а не обычный rollback всей распределённой операции: например, отмена резерва. Она тоже может завершиться ошибкой и требовать повторов или ручного разбора. Нужны устойчивое состояние, timeout и идемпотентность. Если использовали Saga, приведите конкретный процесс и свой вклад, не приравнивая любую цепочку HTTP-вызовов к этому паттерну.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее