Микросервисы: REST против обмена сообщениями

Я слышал, что Amazon использует HTTP для своей микросервисной архитектуры. Альтернативой является использование системы обмена сообщениями, такой как RabbitMQ или Solace. Я лично имею опыт работы с микросервисной архитектурой Solace, но никогда не работал с REST.
Есть идеи, что используют различные реализации высшей лиги, такие как Amazon, Netflix, UK Gov и т. Д.?
Другим аспектом является то, что в микросервисах требуются следующие вещи (помимо других):
* Шаблон соответствия
* Асинхронный обмен сообщениями. Возможно, не работает принимающая система
* Опубликовать подписку
* Событие загрузки в кэш-память. То есть при запуске службе может потребоваться загрузить все данные из пары других служб, и она должна быть уведомлена о полной загрузке данных, чтобы она могла "знать", что теперь она готова к обслуживанию. Запросы
Эти аспекты естественным образом связаны с обменом сообщениями, а не с REST. Зачем кому-то использовать REST (кроме общедоступного API). Благодарю.

2 ответа

Стандарт, которому я следовал в прошлом, - это использование веб-сервисов, когда ключевым требованием является скорость (и потеря данных не критична), и обмен сообщениями, когда ключевым требованием является надежность. Как вы сказали, если принимающая система не работает, сообщение будет находиться в очереди до тех пор, пока система не вернется для обработки. Если это конечная точка REST и она не работает, запросы просто не будут выполнены.

REST API предполагает использование только HTTP. Это технология каменного века, которая не поддерживает асинхронность. обмена сообщениями. Чтобы подключить там обмен сообщениями, я бы подумал, что WebSockets Gateways - извините за глупые заявления

Другие вопросы по тегам