При оркестрации сагой управляет явный координатор: он выдаёт команды и решает следующий шаг. При хореографии сервисы реагируют на события друг друга без единого управляющего процесса.
Чем отличается оркестрация от хореографии в контексте саги?
При оркестрации сагой управляет явный координатор: он выдаёт команды и решает следующий шаг. При хореографии сервисы реагируют на события друг друга без единого управляющего процесса.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
При оркестрации сагой управляет явный координатор: он выдаёт команды и решает следующий шаг. При хореографии сервисы реагируют на события друг друга без единого управляющего процесса.
Оркестрация делает последовательность, таймауты и компенсации видимыми в одном месте, но добавляет отдельный компонент состояния. Хореография снижает зависимость от центрального координатора, однако сквозной процесс сложнее отслеживать и менять при большом числе участников.
В обоих вариантах нужны устойчивое состояние, correlation ID, идемпотентность, обработка повторов и компенсации. Сага не предоставляет автоматического отката всех уже выполненных внешних действий.