В мире микросервисов, каков рекомендуемый способ настройки конечной точки нисходящего API?
Например, если службе A необходимо вызвать конечную точку в службе B, у нас есть два варианта:
а. Сделайте имя хоста и номер порта API службы B настраиваемыми в службе A (service-b: 8080) и добавьте URI пути в свой код
или
b. Сделайте всю конечную точку настраиваемой в службе A (http://service-b: 8080 / somepath)
Хотя мне нравится идея сделать настраиваемую конечную точку, она оставляет много места для ошибок, потому что необходимо указать весь путь . Это также не подходит, когда необходимо вызвать несколько конечных точек из службы A в службу B, которые потенциально могут иметь разные пути, что требует от нас настройки нескольких конечных точек.
С другой стороны, вариант (a) кажется более масштабируемый по вышеупомянутым причинам.
Большинство результатов поиска в Интернете просто продемонстрировали, как служба может вызывать другую службу, и для демонстрации этого использует жестко запрограммированный URL. Было бы неплохо узнать, как сообщество делает это в реальных проектах.
PS: Мы используем Spring Webflux и выполняем развертывание на k8s.