Микросервисы. Какая точная разница между обнаружением службы и шлюзом службы? - PullRequest
0 голосов
/ 17 октября 2018

Я читал статьи вроде: В чем разница между API-шлюзом и пограничной службой? , но до сих пор не ясно, в чем заключается точное различие между обнаружением службы (скажем, Eureka) и шлюзом службы(Зуул)?Любые указатели?

enter image description here

Ответы [ 2 ]

0 голосов
/ 22 октября 2018

Различия более понятны, если вы сосредоточитесь на ответственности как Зуула, так и Эврики.Как вы можете видеть ниже, у каждого есть определенные задачи.Вот основные отличия.

enter image description here

0 голосов
/ 17 октября 2018

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...