Отправить запрос POST от одного сервиса к другому в Amazon ECS - PullRequest
0 голосов
/ 20 июня 2019

У меня есть сайт Node-Express, работающий на архитектуре на основе микросервисов. Я развернул микросервисы в кластере Amazon ECS с одним экземпляром EC2. Микросервисы располагаются за балансировщиком нагрузки приложений, который правильно направляет внешний трафик к сервисам. Эта система работает, как и ожидалось, за исключением одной проблемы: мне нужно сделать запрос POST от одного сервиса к другому. Я пытаюсь использовать Axios для этого, но я не знаю, что URL для публикации в Axios. При локальном тестировании я просто использовал axios.post('http://localhost:3000/service2',...) внутри службы 1, но как мне здесь это сделать?

1 Ответ

0 голосов
/ 21 июня 2019

Так что есть разные способы.
1. Используйте Application Load Balancer за сервисом В этом методе вы размещаете свои микроуслуги за балансировщиком нагрузки и для отправки запроса вы предоставляете URL-адрес балансировщика нагрузки. Вы можете использовать маршрутизацию на основе пути для одного и того же балансировщика нагрузки или использовать несколько балансировщиков нагрузки.

2. Использование службы обнаружения
В этом методе вы позволяете вашему заявителю обнаружить его. Теперь обнаружение службы может быть выполнено различными способами, например с использованием ALB или маршрута 53 или ECS или хранилища значений ключей или управления конфигурацией или стороннего программного обеспечения , например Consul

...