Возможные варианты коммуникации отражены на картинке:
Дальше перед нами встаёт вопрос, а какой когда выбирать?
По умолчанию: стоит выбирать асинхронные коммуникации. Этот подход позволяет отделить сервис друг от друга и балансировать нагрузку со стороны сервиса потребителя самостоятельно. Но для того, чтобы это работало необходима экспертиза при обработке событий, как минимум знать про transacational outbox паттерны.
Синхронные запрос необходимо выбирать, если от сервиса источника сразу необходимы данные или если результат операции невозможно отложить.
Что дальше
context:: распределённые системы problem::
Источники
Как улучшить
- [ ]