Шлюз служб (он же API-шлюз) принимает запросы от клиентов.Это (единственная) услуга, которую видят клиенты.Но он сам не знает, как делать то, что хотят клиенты, поэтому он должен переслать запрос в другую службу.Он проверяет URL-адрес и извлекает имя службы, которая фактически будет обслуживать запрос, бэкэнд-службы.Этот бэкэнд-сервис может быть расположен на другом компьютере.Он может иметь динамический адрес или порт, который может меняться время от времени по разным причинам (сбой узлов, добавление новых узлов в сеть и т. Д.).
Итак, шлюз не знает, куда направить запрос.Это работа Службы обнаружения (Eureka).Eureka знает, на каком узле находится и по какому адресу и порту каждый сервис прослушивает запросы.Шлюз спрашивает Eureka, где он может найти бэкэнд-сервис (отправив ему только его имя).После того, как Eureka отвечает, шлюз пересылает запрос на этот адрес.