Сравнение политик Quota и SpikeArrest

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

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

Квота SpikeArrest
Используйте его для: Ограничьте количество подключений, которые приложения могут устанавливать к целевому бэкэнду вашего API-прокси за определенный период времени. Защитите целевую серверную часть вашего API-прокси от резких скачков трафика и атак типа «отказ в обслуживании».
Не используйте его для:

Не используйте его для защиты целевого бэкэнда вашего API-прокси от всплесков трафика.

Для этого используйте политику SpikeArrest.

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

Для этого воспользуйтесь политикой квот.

Количество магазинов? Да Нет
Рекомендации по прикреплению полиса:

Прикрепите его к предварительному потоку запросов ProxyEndpoint , как правило, после аутентификации пользователя.

Это позволяет политике проверять счетчик квоты в точке входа вашего API-прокси.

Прикрепите его к предварительному потоку запросов ProxyEndpoint , как правило, в самом начале потока.

Это обеспечивает защиту от скачков нагрузки в точке входа вашего API-прокси.

Код состояния HTTP при достижении лимита:

500 (Внутренняя ошибка сервера) *

500 (Внутренняя ошибка сервера) *

Полезно знать:
  • Счетчик квот хранится в Cassandra.
  • Настройте политику для асинхронной синхронизации счетчика с целью экономии ресурсов.
  • Асинхронная синхронизация счетчиков может вызвать задержку в ответе на запрос ограничения скорости, что может привести к тому, что количество вызовов немного превысит установленный вами лимит.
  • Регулирование трафика осуществляется на основе времени получения последнего сообщения. Это время сохраняется для каждого обработчика сообщений.
  • Если вы зададите ограничение скорости в 100 вызовов в секунду, то обработчику сообщений будет разрешен только 1 вызов каждые 1/100 секунды (10 мс). Второй вызов в течение 10 мс будет отклонен.
  • Даже при высоком лимите запросов в секунду, почти одновременные запросы могут привести к отклонениям.
Подробнее: Политика квот Политика SpikeArrest

* Для политик Quota и SpikeArrest код состояния HTTP по умолчанию при превышении лимита запросов — это стандартная 500 Internal Server Error . Вы можете изменить код состояния для этих политик на 429 Too Many Requests , добавив свойство на уровне организации ( features.isHTTPStatusTooManyRequestEnabled ). Если вы являетесь клиентом облачной версии, обратитесь в службу поддержки Apigee Edge , чтобы включить это свойство.