Вопрос проверяет понимание оркестрации сервисов и управления сложным бизнес-процессом через единый вход.
Один endpoint обычно выступает в роли оркестратора. Он принимает запрос, валидирует данные и запускает цепочку вызовов других сервисов. Часть шагов может быть синхронной, часть — асинхронной. Важно контролировать ошибки, таймауты и откаты. Часто используют Saga-подход или фоновые задачи.
Единый endpoint-оркестратор — это API-точка входа, которая управляет выполнением нескольких связанных операций в разных сервисах.
Явная оркестрация
Endpoint управляет порядком шагов.
Каждому шагу соответствует отдельный вызов сервиса.
Контроль ошибок
Таймауты и retry для каждого вызова.
Обработка частичных отказов.
Компенсации
Если шаг N упал, выполняются компенсационные действия для шагов 1..N-1.
Асинхронность при необходимости
Долгие шаги выносятся в фон.
Клиенту возвращается operation_id.
def create_order():
reserve_stock()
charge_payment()
notify_user()
Endpoint становится “толстым”.
Усиливается связанность сервисов.
Ошибки одного сервиса влияют на общий сценарий.
Один endpoint с цепочкой вызовов оправдан для цельного бизнес-сценария, но требует строгого контроля ошибок, таймаутов и компенсаций.