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

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

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

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

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

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

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

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

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

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

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

Прикрепите его к PreFlow запроса ProxyEndpoint , обычно в самом начале потока.

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

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

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

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

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

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