Облачная платформаAdvanced

Создание политики ограничения запросов

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

Сценарий

Ограничение запросов контролирует количество вызовов API за определённый период времени для защиты серверных служб.

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

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

Note
  • Для данного окружения API может быть привязан только к одной политике ограничения запросов, однако каждая политика ограничения запросов может быть привязана к нескольким API.
  • Для общего шлюза значение ограничения запросов по умолчанию составляет 200 вызовов в секунду. Для выделенного шлюза ограничение равно значению ratelimit_api_limits, которое вы настроили на странице Configuration Parameters.

Требования

Вы published the API, к которому хотите привязать политику ограничения запросов.

Создание политики ограничения запросов

  1. Войдите в консоль управления.
  2. Нажмите в левом верхнем углу и выберите API Gateway.
  3. В панели навигации выберите API Publishing > Request Throttling.
  4. Нажмите Create Request Throttling Policy и задайте параметры, перечисленные в Table 1.

    Table 1 Параметры создания политики ограничения запросов

    Параметр

    Описание

    Имя

    Имя политики ограничения запросов.

    Тип

    Ограничение запросов на основе API или совместное ограничение запросов API.

    • API-based: Ограничение запросов основано на каждом API, к которому привязана политика.
    • API-shared: Ограничение запросов основано на всех API в совокупности, к которым привязана политика.

    Период

    Как долго вы хотите ограничивать количество вызовов API. Этот параметр может использоваться вместе со следующими параметрами:

    • Max. API Requests: Ограничивает максимальное количество вызовов API за определённый период.
    • Max. User Requests: Ограничивает максимальное количество вызовов API пользователем за определённый период.
    • Max. App Requests: Ограничивает максимальное количество вызовов API приложением за определённый период.
    • Max. IP Address Requests: Ограничивает максимальное количество вызовов API с IP-адреса за определённый период.

    Max. API Requests

    Максимальное количество вызовов каждой привязанной API за указанный период.

    Этот параметр должен использоваться вместе с Period.

    Max. User Requests

    Максимальное количество раз, когда каждая привязанная API может быть вызвана пользователем в указанный период. Это ограничение применяется только к API, доступ к которым осуществляется через аутентификацию app или IAM.

    • Значение этого параметра не может превышать значение Max. API Requests.
    • Этот параметр должен использоваться вместе с Period.
    • Если в вашей учётной записи есть множество пользователей, которые обращаются к API, ограничения пропускной способности запросов API будут применяться ко всем этим пользователям.

    Max. App Requests

    Максимальное количество раз, когда каждая привязанная API может быть вызвана приложением в указанный период. Это ограничение применяется только к API, доступ к которым осуществляется через аутентификацию app.

    • Значение этого параметра не может превышать значение Max. User Requests.
    • Этот параметр должен использоваться вместе с Period.

    Max. IP Address Requests

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

    • Значение этого параметра не может превышать значение Max. API Requests.
    • Этот параметр должен использоваться вместе с Period.

    Описание

    Описание политики Request Throttling.

  5. Нажмите OK.

    После создания политики она отображается на странице Request Throttling. Вы можете привязать эту политику к API, чтобы ограничить запросы к API.

Привязка политики Request Throttling к API

  1. Перейдите на страницу привязки политики Request Throttling к API. Вы можете использовать один из следующих методов:

    • В столбце Operation политики Request Throttling, которую нужно привязать, нажмите Bind to API, затем нажмите Select API.
    • Нажмите название целевой политики Request Throttling, затем нажмите Select API на вкладке APIs.

  2. Укажите группу API, среду и ключевое слово имени API для поиска нужного API.
  3. Выберите API и нажмите OK.

    Note

    Если политика Request Throttling больше не требуется для API, её можно отвязать. Чтобы отвязать политику Request Throttling от нескольких API, выберите API и нажмите Unbind. За один раз можно отвязать политику Request Throttling от максимум 1000 API.

Последующие операции

Чтобы ограничить максимальное количество вызовов API, получаемых от конкретного app или tenant, укажите app или tenant для исключения, обратившись к Adding an Excluded App or Tenant. Если app исключён в политике Request Throttling, любой порог, настроенный для этого app, имеет приоритет над политикой Request Throttling. Ограничения запросов API и пользователей этой политики остаются действительными. Если tenant исключён в политике Request Throttling, будет применён любой порог, настроенный для этого tenant. Ограничения запросов API и app этой политики остаются действительными.