Мой вопрос связан с микросервисами & сервисное открытие службы, которая распространяется между несколькими хостами.микросервисы и обнаружение службы со случайными портами
Установка выглядит следующим образом:
- 2 Докер хостов (Host A & хоста B)
- сервер Consul (обнаружение услуг)
Давайте предположим, что у меня есть 2 услуги:
- сервис А
- услуга Б
Сервис Б развернут в 10 раз (со случайными портами): 5 раз на хост А и 5 раз на хост B.
Когда услуги А осуществляет связь с сервисом B, например, он посылает запрос на serviceB.example.com (жесткий код).
Чтобы получить IP-адрес и порт, служба A должна запросить сервер Consul для записи SRV.
Он получит 10 пар ip: port, для которых клиент должен применять некоторую логику балансировки нагрузки.
- Есть ли более простой способ справиться с этим, если бы я не разрабатывал библиотеку клиентских решений (+ LB)?
- Есть ли что-то вроде этого уже реализовано где-то?
- Я делаю все это неправильно?