Перейти к содержанию

Обнаружение сервисов

В микросервисной архитектуре, когда большинство сервисов получает адреса динамически, и набор экземпляров может постоянно изменяться, важно использовать механзм обнаружения сервисов. Ядром такого механизма становится реестр сервисов. Когда экземпляры сервисов запускаются или останавливаются, механизм обнаружения обновляет реестр. Когда клиент хочет обратиться к сервису, он обращается к реестру за списком доступных экземпляров сервиса, и запрашивает один из них.
Есть два основных способа обнаружения сервисов.

Сервисы и их клиенты напрямую взаимодействуют с реестром.

Данный подход сочетает в себе два шаблона

Одним из преимуществ такого подхода является возможность развертывания сервисов на разных платформах. А недостатками являются как необходимость наличия библиотеки обнаружения сервисов для каждого используемого ЯП, так и то, что обслуживание и поддержка реестра ложится на разработчиков приложения.

За обнаружение сервисов отвечает инфраструктура развертывания.

В этом подходе забота о реестре и обнаружении сервисов ложится на инфраструктурное решение, такое как Kubernetes. В этом подходе, по аналогии с предыдущим, сочетаются следующие шаблоны

Ключевое преимущество данного подхода состоит в том, что всеми вопросами обнаружения сервисов занимается платформа. Ни клиенты, ни сервисы не содержат никакого кода для этой цели. Недостаток заключается в том, что он поддерживает обнаружение только тех сервисов, которые развернуты на конкретной платформе.


Последнее обновление : 7 сентября 2022 г.
Дата создания : 25 июля 2022 г.

Комментарии

Комментарии