限制 API 使用量

根据 API,您可以通过多种方式明确限制请求,包括限制每天请求数、每分钟请求数或每个用户每分钟请求数。

这些是特定于 API 的使用限制。例如,为了避免因超出免费用量而产生费用,您可以设置每日请求数上限。

这些限制旨在对特定服务量进行精细控制,而不是作为项目范围内的支出上限。如果您想避免整个项目或结算账号产生意外费用,请参阅创建、修改或删除预算和预算提醒。

查看和修改请求数量限制

您可以为任何可计费 API 的所有请求设置限制。大多数 API 都设置了默认限制,但您可以将该限制更改为 Google 指定的最大值。在您为项目启用结算之前,某些 API 设置了一个很低的限制。

要查看或更改 API 的限制,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往 API 和服务信息中心页面。

    转到“API 和服务”信息中心

  2. 从项目列表中,选择一个项目或创建一个新项目。
  3. 点击您感兴趣的 API 的名称。
  4. 点击配额。如果标签页导航栏中没有配额标签页,则表示您选择的 API 没有定义配额。
  5. 如需查找您希望为其设置上限的配额,请在 过滤条件字段中输入适当的属性和值。例如,如需查找子网配额,请输入配额:子网。
  6. 点击要设置上限的配额对应的复选框,然后点击 修改配额。
  7. 填写配额更改表单,包括要设置的新限额。
  8. 点击提交请求。

某些 API 可让您通过提交表单来请求更高的限制。某些 API 只有在项目上启用结算后,才允许您指定更高的配额。

限制每个用户的请求数

为防止个别用户用尽您的 API 配额,部分 API 包含默认的每用户每分钟限制。

如需查看您的 API 是否包含默认的每用户每分钟限制,请按照查看和修改请求数量限制中的说明在 API 配额中查找该限制。 如果相应 API 存在此类默认限制,您可以按照这些说明中的步骤修改该值,以限制每个用户的可用配额。如果您的 API 的配额中不包含此默认限制,则不支持添加或修改此限制。

默认情况下,系统使用经过身份验证的主账号来唯一标识各个用户。经过身份验证的主账号包括使用 OAuth 令牌的用户账号、服务账号或联合工作负载身份。如果没有经过身份验证的主账号,系统会使用客户端 IP 地址。由于此回退行为默认处于有效状态,因此即使您未指定用户标识符,系统也会强制执行每个用户的配额限制。

使用客户端 IP 地址回退具有以下两个主要限制:

  • 共享公共 IP 地址:位于网络地址转换 (NAT) 网关或代理(例如学校办公室或 VPN 端点)后面的多个用户将共享一个公共 IP 地址。他们的请求将汇集到同一配额桶中,这可能会导致配额过早耗尽。
  • 基于 IP 的规避:有权访问大量 IPv6 地址或 VPN 代理的用户可以轮换客户端 IP 地址来绕过速率限制,从而使 IP 回退无法提供可靠的滥用行为防护。

如果您是从服务器端应用(调用代码托管在您拥有的服务器上)代表多个用户调用 API,并且您使用单个经过身份验证的主账号,则所有调用都将归因于该单个主账号。在这种情况下,无法单独设置个人用户的通话上限。为防止出现这种情况,您可以在请求中指定 quotaUser 参数或 X-Goog-Quota-User 标头,以替换默认的用户标识和分区配额用量。这些参数在系统参数文档中定义。

如需使用 quotaUser 参数或 X-Goog-Quota-User 标头替换默认的用户标识,您必须使用具有服务限制(例如 IP 地址限制或 HTTP 推荐来源限制)的有效 API 密钥来标识配额项目。否则,系统会忽略相应参数或标头,并回退到默认的用户身份验证。

如需标识用户,请使用 quotaUser=userID 网址查询参数。此值仅用于短期配额强制执行,因此您无需使用真实的用户 ID。您可以选择长度在 40 个字符以下的任意字符串来唯一标识一个用户。

为保护用户隐私并限制指标量, Google Cloud 控制台和 Cloud Monitoring 不会存储或显示由单个 quotaUser 或 IP 地址解析的遥测数据。您可以查看整个项目的配额上限和总用量,但无法监控、替换或配置特定用户的提醒。

如果您的 API 不包含每用户每分钟的默认限制,则系统会忽略 quotaUser 值。

查看和修改项目中 API 的所有配额

您可以在Google Cloud 控制台的 IAM 和管理部分的配额页面中查看、修改和申请提高给定项目中的所有可结算 API 的配额限制。

要查看和修改项目中所有可计费 API 的配额,请执行以下操作:

  1. 在 Google Cloud 控制台中,前往配额页面。

    转到“配额”

  2. 从项目列表中,选择一个项目或创建一个新项目。 系统会显示所选项目的配额页面,其中列出了每个服务中每种可用配额的一行项目。
  3. 点击 过滤表,按特定属性查询配额。
  4. 勾选您要修改的配额旁边的复选框。为项目启用结算功能后才能点击某些复选框。
  5. 点击 修改配额。
  6. 在随后显示的配额更改窗格中,展开服务视图,根据需要修改该服务中的配额,然后点击完成。
  7. 重复以上步骤,为选择的每个服务修改配额。
    • 输入框中会预先填充当前配额限制。
    • 提交时带有提醒图标 () 的服务存在输入错误。
    • 您可以按照前面所述选择更多配额以进行修改。
    • 如需从配额更改窗格中移除某项服务,请将鼠标悬停在未展开的服务视图上,然后点击删除图标 ()。
  8. 完成配额修改后,点击下一步。
  9. 如果您的配额修改请求需要审核,系统会显示联系信息表单。在表单中填写您的联系信息。
  10. 点击提交请求。