Антипаттерн: разрешить медленный бэкэнд

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

Бэкэнд-системы запускают сервисы, к которым имеют доступ API-прокси. Другими словами, они являются фундаментальной причиной самого существования API и уровня прокси-сервера управления API.

Любой запрос API, маршрутизируемый через платформу Edge, проходит типичный путь, прежде чем попасть на серверную часть:

  • Запрос исходит от клиента, которым может быть что угодно, от браузера до приложения.
  • Затем запрос принимается шлюзом Edge.
  • Он обрабатывается внутри шлюза. В рамках этой обработки запрос передается на ряд распределенных компонентов.
  • Затем шлюз направляет запрос на серверную часть, которая отвечает на запрос.
  • Затем ответ от серверной части проходит обратный путь через шлюз Edge обратно к клиенту.

По сути, производительность запросов API, маршрутизируемых через Edge, зависит как от Edge, так и от серверных систем. В этом антипаттерне мы сосредоточимся на влиянии на запросы API плохой производительности серверных систем.

Антипаттерн

Давайте рассмотрим случай проблемного бэкэнда. Это возможности:

  • Серверная часть неадекватного размера
  • Медленный бэкэнд
  • Серверная часть неадекватного размера

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

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

    Проблема с серверной частью «неадекватного размера» заключается в том, что если произойдет всплеск запросов API, это приведет к нагрузке на такие ресурсы, как ЦП, нагрузка и память на серверных системах. В конечном итоге это приведет к сбою запросов API.

    Медленный бэкэнд

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

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

    Влияние

    • В случае серверной части недостаточного размера увеличение трафика может привести к неудачным запросам.
    • В случае медленного бэкенда задержка запросов увеличится.

    Лучшая практика

    • Используйте кеширование для хранения ответов, чтобы сократить время ответа API и снизить нагрузку на внутренний сервер.
    • Решите основную проблему медленных внутренних серверов.

    Дальнейшее чтение