跳至内容

如何增加和管理 API Gateway 节流配额?

2 分钟阅读
0

我想增加和管理我的 Amazon API Gateway 节流配额,以应对流量较高的情况。

简短描述

API Gateway 在每个 AWS 区域均设有账户级别配额。节流配额为每秒 10,000 次请求 (RPS),同时基于令牌桶算法提供额外的暴增容量。单个 AWS 账户在每个区域的最大桶容量为 5,000 次请求。

有关更多信息,请参阅限制对 REST API 的请求以优化 API Gateway 中的吞吐量。

解决方法

要管理 API Gateway 节流配额,您可以申请增加账户级别的节流配额。您还可以开启缓存、配置使用计划和 API 密钥以及使用重试模式。

**注意:**如果您超出节流配额,则会收到 "429 Too Many Requests" 或 "Limited Exceeded" 错误响应。要解决此问题,请参阅如何对 API Gateway REST API 的 "Exceeded throttle limit" 或 "Exceeded quota limit" 错误进行故障排除?

提交账户级别的节流配额增加请求

完成以下步骤:

  1. 打开服务配额控制台。
  2. 在导航窗格中,选择 AWS services(AWS 服务)。
  3. 在 AWS services(AWS 服务)搜索栏中,输入 Amazon API Gateway。
  4. 在 Service quotas(服务配额)搜索栏中,输入 Throttle rate(节流速率)。
  5. 选择 Request increase at account level(请求在账户级别增加)。
  6. 对于 Increase quota value(增加配额值),输入一个大于 10,000 的值。
  7. 选择 Request(请求)。
    **注意:**在 Recent quota increase request(最近的配额增加请求)部分中,状态将显示为 Pending(待处理)。
  8. 请等待几分钟,然后刷新页面。

如果配额增加请求未超过最大配额,则状态将更改为 Approved(已批准)。要查看您的新配额,请选中 Applied account-level quota value(应用的账户级别配额值)字段。如果配额增加请求超过最大配额,则状态将更改为 Case opened(已开立工单)。您可以在 AWS Support Center 查看该工单。

**注意:**节流突增速率配额不可调整,您无法申请增加配额。有关更多信息,请参阅 Amazon API Gateway 配额。

开启 API Gateway 缓存

您可以开启 API 缓存来减少对端点的 API 调用次数,从而避免触发节流。有关更多信息,请参阅如何选择最佳的 Amazon API Gateway 缓存容量以避免出现速率限制?

配置 REST API 使用计划和 API 密钥

您可以配置使用计划和 API 密钥,以根据您定义的节流限制和配额限制来限制 API 请求。使用计划会通过您为 REST API 设置的 API 密钥来控制可以访问 API 阶段的对象。

要配置 REST API 使用计划,请先在 API Gateway 中为 REST API 设置 API 密钥。然后,在 API Gateway 中设置 REST API 的使用计划。

要获取与 API 密钥相关的使用情况,请参阅如何识别与 API Gateway 的 API 密钥相关的使用情况?

有关更多信息,请参阅 API Gateway 中 REST API 的使用计划和 API 密钥。

使用标准重试模式

如果超出节流配额,您可以使用带有抖动指数回退的标准重试模式,然后重新提交 API 请求。当 API Gateway 限制 API 调用时,指数回退允许更长的等待时间。有关详细信息,请参阅重试行为以及指数回退和抖动。