Настройка квоты использования по ключу
ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Базовый | Стандартный | Премия
Политика quota-by-key
принудительно устанавливает возобновляемую или действующую в течение срока службы квоту на число вызовов и (или) квоту пропускной способности для каждого ключа. Ключ может содержать произвольное строковое значение и обычно указывается с помощью выражения политики. Чтобы указать, какие запросы следует учитывать в квоте, можно добавить дополнительное условие увеличения. Если несколько политик будут увеличивать одно и то же значение ключа, оно увеличивается только один раз за запрос. При превышении квоты вызывающий объект получает код состояния ответа 403 Forbidden
, и ответ включает заголовок Retry-After
, значение которого представляет собой рекомендуемый интервал повтора в секундах.
Сведения о разнице между ограничениями скорости и квотами см. в разделе "Пределы скорости и квоты".
Примечание.
Когда базовые вычислительные ресурсы перезапускаются на платформе службы, Управление API может продолжать обрабатывать запросы в течение короткого периода после достижения квоты.
Примечание.
Задайте элементы политики и дочерние элементы в порядке, указанном в правиле политики. Чтобы помочь вам настроить эту политику, портал предоставляет интерактивный редактор на основе форм. Узнайте, как устанавливать или изменять политики службы управления API.
Правило политики
<quota-by-key calls="number"
bandwidth="kilobytes"
renewal-period="seconds"
increment-condition="condition"
increment-count="number"
counter-key="key value"
first-period-start="date-time" />
Атрибуты
Атрибут | Description | Обязательное поле | По умолчанию. |
---|---|---|---|
bandwidth | Максимальное общее число килобайтов, разрешенное в течение периода времени, указанного в renewal-period . Выражения политики не допускаются. |
Необходимо указать атрибут calls , bandwidth или оба вместе. |
Н/П |
вызывает | Максимальное общее число вызовов, разрешенное в течение периода времени, указанного в renewal-period . Выражения политики не допускаются. |
Необходимо указать атрибут calls , bandwidth или оба вместе. |
Н/П |
counter-key | Ключ, используемый для quota policy . Для каждого значения ключа используется один счетчик для всех областей, для которых настроена политика. Допустимы выражения политики. |
Да | Н/П |
increment-condition | Логическое выражение, указывающее, следует ли рассчитывать запрос на квоту (true ). Допустимы выражения политики. |
No | Н/П |
increment-count | Число, на которое увеличивается счетчик, для каждого запроса. Допустимы выражения политики. | No | 1 |
renewal-period | Длина фиксированного периода в секундах, по истечении которого квота сбрасывается. Начало каждого периода вычисляется относительно first-period-start . Минимальный период: 300 секунд. Если renewal-period задано значение 0, период имеет значение бесконечно. Выражения политики не допускаются. |
Да | Н/П |
first-period-start | Дата и время начала периода продления квоты в следующем формате: yyyy-MM-ddTHH:mm:ssZ согласно стандарту ISO 8601. Выражения политики не допускаются. |
No | 0001-01-01T00:00:00Z |
Использование
- Разделы политики: inbound.
- Области политики: глобальная, рабочая область, продукт, API, операция
- Шлюзы: классическая, локальная, рабочая область
Примечания об использовании
Значение counter-key
атрибута должно быть уникальным для всех API-интерфейсов в экземпляре Управление API, если вы не хотите совместно использовать общий объем между другими API.
Пример
<policies>
<inbound>
<base />
<quota-by-key calls="10000" bandwidth="40000" renewal-period="3600"
increment-condition="@(context.Response.StatusCode >= 200 && context.Response.StatusCode < 400)"
counter-key="@(context.Request.IpAddress)" />
</inbound>
<outbound>
<base />
</outbound>
</policies>
Дополнительные сведения и примеры этой политики см. в статье Расширенное регулирование запросов с помощью управления API.
Связанные политики
Связанный контент
Дополнительные сведения о работе с политиками см. в нижеуказанных статьях.
- Руководство. Преобразование и защита API
- Полный перечень операторов политик и их параметров см. в справочнике по политикам.
- Выражения политики
- Настройка или изменение политик
- Повторное использование конфигураций политик
- Репозиторий фрагментов политик
- Создание политик с помощью Microsoft Copilot в Azure