Концепции
Основные понятия
API Gateway оперирует следующими взаимосвязанными сущностями:
- Шлюз API
Интерфейс взаимодействия, который находится перед API группы микросервисов. Облегчает отправку запросов и доставку данных сервисов.
Назначения шлюза:
Выступать в качестве единой точки входа и стандартизированного процесса взаимодействия между различными сервисами организации в рамках одного сценария использования.
Выполнять функцию прослойки между API и базовой инфраструктурой.
Поддерживать и управлять использование API, включая авторизацию, ограничение числа запросов в единицу времени и другие службы.
Шлюз API является контейнером для правил. Все правила, размещенные в шлюзе, реализуют перенаправление запросов, отправленных на адрес шлюза API, к группе микросервисов. Адрес шлюза генерируется автоматически при создании шлюза и доступен в разделе Конфигурация.
- Правило
Набор свойств, согласно которым обрабатываются запросы клиента к шлюзу API, в котором это правило создано, по заданным правилам соответствия HTTP-метода и URI запроса. Определяет сценарий обработки запросов, поступивших на выбранные URI шлюза API, а совокупность правил определяет всю логику пользовательского взаимодействия со шлюзом API.
К правилу можно привязать плагины, которые обогащают логику обработки запросов.
- Плагин
Плагин — подключаемый модуль, реализующий расширенную логику, которая применяется между отправкой HTTP-запроса и получением ответа. Конфигурация плагина привязывается к правилу.
Плагины могут быть привязаны только к конкретному правилу и модифицируют выполнение только тех запросов, которые соответствуют настройкам правила. К каждому правилу могут быть привязаны все доступные плагины, но только по одному каждого типа.
См.также
Пример взаимосвязи объектов
Пример взаимосвязи сущностей, используемых в сервисе API Gateway, с псевдоданными представлена на схеме ниже.