API-шлюз

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

Как это работает

Маршруты сопоставляют пути и методы с вышестоящими сервисами. Политики выполняются до и после вызова вышестоящего сервиса: проверка токена, проверка лимита скорости, переадресация, затем добавление заголовков и логирование. Поскольку шлюз находится на пути, многие ошибки, которые видит клиент — 401, 413, 429, 502, 504 — исходят от шлюза, а не от сервиса, к которому клиент хотел обратиться.

Заблуждение

Ошибка 502 или 504 означает, что приложение само виновато, или нет. Обе ошибки выдаются шлюзом относительно вышестоящего сервера: 502 означает, что служба ответила недействительным сообщением или разорвала соединение, 504 — что она не ответила вовремя. Начните с изучения журналов шлюза и идентификатора запроса.

Попробуйте здесь.

Команда GET /protocol/v1/gateway-timeout ведет себя как шлюз перед медленным восходящим каналом, отвечая кодом 504 примерно через три секунды; команда GET /faults/v1/status/502 возвращает ошибку, указывающую на неисправный шлюз, по запросу.

Источники

Другие термины

Читать страницу на английском

Все термины · Приёмы тестирования · Все 39 mock REST API

Последнее обновление