У меня есть сценарий использования, который должен сделать следующее:
- Получив запрос, позвоните в сервисную службу A, B, C, D и отправьте ответ
- Между каждым из сервисных вызовов регистрируйтесь до и после вызова
- B & C может вызываться после A, но D должен вызываться после завершения обоих B & C.
- Реализация общего канала ошибок для всей обработки ошибок и отправки ответа
- Возможность пропустить шаги или начать с данного шага. Метаданные для определения шага будут в запросе.
В настоящее время я реализовал канал сообщений между каждым этапом, что означает, что каждый шаг получает запрос от своего входящего канала, и когда он завершает свою задачу, он публикует сообщения на входящем канале следующего шага. Регистрация до и после достигается через wireTap.
Каков наилучший подход?
спасибо,