TGViewer
Системный аналитик в финтехе/Orlova courses Системный аналитик в финтехе/Orlova courses @virafintex · 2.35K subscribers
Post #339 715
Всем привет! Недавно в общих чертах писала про API Gateway.
Решила чуть подробнее раскрыть эту тему. API Gateway бывают разные, давайте разберем основные паттерны.

1. Шлюз-агрегатор (Gateway Aggregation)
Сценарий: клиенту нужны данные сразу из нескольких микросервисов, но вместо множества HTTP-запросов он делает один запрос к API Gateway, который агрегирует данные.
API Gateway отправляет запросы к нескольким микросервисам.
Собирает их ответы и возвращает клиенту единый объект.
Может использовать GraphQL для запроса только нужных данных.
Плюсы:
Меньше зависимостей для фронта.
Уменьшает число запросов.
Повышает скорость ответа клиенту.
Минусы:
Спецификация API-GW становится достаточно сложной, в том числе для поддержки и развития.

2. Шлюз-прокси (Gateway Routing / Reverse Proxy)
Сценарий: API Gateway просто маршрутизирует запросы на нужный микросервис, не изменяя их.
Клиент делает запрос на метод к общему URI, например: GET: https://ecom.shop/orders
API-GW перенаправляет его на необходимый сервис: https://order-service/orders.
Клиент не знает какой сервис выполнил его запрос.
Плюсы:
Простота реализации.
Клиент остается независимым от внутренних URL.
Можно легко менять маршруты без обновления клиентов.
Минусы:
Количество запросов не снижается.

3. API Gateway с адаптацией (Gateway Offloading)
Сценарий: API Gateway берет на себя кросс-сервисные функции (аутентификация, кэширование, rate limiting, CORS).
API Gateway проверяет JWT-токены, API-ключи, аутентифицирует запросы.
Реализует кэширование ответов, чтобы разгрузить сервисы.
Ограничивает количество запросов (rate limiting), защищая систему от DDoS.
Добавляет CORS-заголовки для браузеров.
Плюсы:
Централизованное управление стандартами безопасности. Единые стандарты заголовков, маркеров сессий или транзакций, управление безопасностью, выполняется API-GW.
Разгружает микросервисы, за счет вынесение вышеописанного функционала в отдельный компонент(API-GW).
Улучшает производительность.
Минусы:
Сложность API Gateway увеличивается.
Данный вариант часто применяется для высоконагруженных систем.

Давайте вернемся к часто используемому NGINX.
NGINX может выполнять следующие функции:
— маршрутизировать запросы к нужным сервисам;
— работать как балансировщик нагрузки (Load Balancer) и распределять запросы между несколькими экземплярами одного сервиса;
— выполнять TLS termination;
— ограничивать количество запросов;
— кэшировать ответы;
— добавлять и изменять HTTP-заголовки;
— раздавать статический контент — например, HTML, CSS, JavaScript, изображения;
— реализовывать различные схемы распределения трафика.
Давайте про балансировку поговорим в следующем посте.
А сейчас обсудим про - canary release (канарейку).

Допустим, мы выпустили новую версию сервиса:
order-service v1 — текущая версия
order-service v2 — новая версия.
С помощью NGINX можно настроить распределение трафика, например:
95% →на  v1
5% → на v2
Так небольшая доля пользователей сначала работает с новой версией. Если всё хорошо — постепенно увеличиваем процент трафика на v2.

NGINX — это технология, которая может выполнять функции reverse proxy, web-сервера и балансировщика и закрывать часть задач API Gateway.Используется для простой маршрутизации без дополнительных инструментов, таких как сложная аутентификация и service-mesh. Позволяют также реализовать простые паттерны кэширования.

Предлагаю в следуюшем посте обсудить балансировщиков нагрузки, горизонтальное масштабирование, ставь орла🦅 если нужен следуюший пост.

Полезно- ❤️
  • ❤ 9
More from @virafintex
  1. Sep 25, 2026Ребят, мне неожиданно пришёл очень необычный отзыв. На курс пришла очень активная девушка.…
  2. Sep 24, 2026Поздравляю всех с днем системного аналитика! Адекватных заказчиков и легких задач!
  3. Sep 22, 2026Викторину на сегодня заканчиваю. Про все вопросы, которые обсуждали сегодня, рассказываю н…
  4. Sep 22, 2026Post #355
  5. Sep 22, 2026Post #354
  6. Sep 22, 2026Post #353
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →