Compute Engine 速率配额


本文档列出了 Compute Engine 速率配额,这些配额定义了您可以对 Compute Engine API 方法发出的请求数。

速率配额

速率配额(也称为 API 速率限制或 API 配额)定义了可向 Compute Engine API 发出的请求数。这些配额按项目应用。每个配额适用于一个或多个 Compute Engine API 方法组。使用 gcloud CLI 或 Google Cloud 控制台时,您也会向 API 发出请求,这些请求将计入您的速率配额。如果您使用服务账号访问 API,这也会计入您的速率配额。

Google 会针对每个组以每分钟(60 秒)的间隔强制应用速率配额。也就是说,如果您的项目在 60 秒内的任何时候达到 API 请求数上限,您必须等待该速率配额重新填充,然后才能在该组中发出更多请求。如果您的项目超过速率配额,您会收到 403 错误和原因 rateLimitExceeded。要解决此错误,请等待一分钟再重新发送请求,配额应该会在下一个间隔开始时重新填充。

可以向 Compute Engine API 发出的请求数由API配额定义,如下表所示。每个组均单独计算,因此您可以同时达到每个组的最大配额。

全局方法的速率配额

以下部分列出了定义了您可以对全局 Compute Engine API 方法发出的请求数的配额。

简化了全局方法的 API 配额

为了提高 Compute Engine API 配额的可发现性和可管理性,Google Cloud 通过将指标合并到更少的配额中来减少配额指标的数量。这些简化的配额指标还为每个配额提供了更高的限制。

如需查看全局方法的完整列表以及跟踪每种方法费用的配额指标,请参阅 Compute Engine API 配额指标参考

下表列出了 Compute Engine API 的所有简化 API 配额指标:

配额
配额说明
指标名称
每分钟读取请求数 (GlobalReadsPerMinutePerProject)
getlist 方法的全局配额。
compute.googleapis.com/global_reads
每分钟写入请求数 (GlobalWritesPerMinutePerProject)
未包含在其他配额指标下的全局写入方法的配额。
compute.googleapis.com/global_writes
每分钟可用的列出请求数 (GlobalListUsablePerMinutePerProject)
全局 ListUsable 方法的配额。
compute.googleapis.com/list_usable_requests
每分钟缓存失效请求数 (GlobalCacheInvalidationRequestsPerMinutePerProject)
全局 UrlMapsService.InvalidateCache 方法的配额。
compute.googleapis.com/global_cache_invalidation_requests
过滤后的列表费用开销(ListRequestsFilterCostOverheadPerMinutePerProject)

带有过滤条件的 *.list*.aggregatedList 全局方法的配额。

除了 compute.googleapis.com/global_reads 指标的配额之外,Google Cloud 还会针对此指标收取配额使用费。 如果从列表请求中过滤出的资源超过 1 万个,则会产生配额费用。如果超出此配额限制,Compute Engine API 会拒绝列表请求。

compute.googleapis.com/filtered_list_cost_overhead
每个项目的速率:每分钟每个区域从列表中过滤出 75 万个资源。由于配额按每 1 万个资源计费,因此在 Google Cloud 控制台中查询此配额限制时,您会看到限制为 75(75 万/1 万)。
每分钟请求数 (GlobalRequestsPerMinutePerProject)

所有全局读取和写入请求的配额。

compute.googleapis.com/global_requests

全局方法的旧版 API 配额

下表列出了全局方法的所有 Compute Engine API 配额。

配额
配额说明
指标名称
每分钟查询次数 (defaultPerMinutePerProject)
未包含在其他配额指标下的全局列出和变更方法的配额。

以下 get 方法也使用此 default 指标:

  • networkFirewallPolicies.get
  • projects.getXpnHost
  • projects.getXpnResources
compute.googleapis.com/default
读取请求(旧版)(ReadRequestsPerMinutePerProject)
全局 *.get 方法的配额。
compute.googleapis.com/read_requests
全局 *.list 方法的
列出请求 (ListRequestsPerMinutePerProject) 的配额。
compute.googleapis.com/list_requests
操作读取请求 (OperationReadRequestsPerMinutePerProject)
globalOperations.get 方法的配额。
compute.googleapis.com/operation_read_requests
全球性资源变更请求(GlobalResourceWriteRequestsPerMinutePerProject)
images.deleteimages.deprecateimages.insertimages.setLabelssnapshots.deletesnapshots.insertsnapshots.setLabelsmachineImages.insertmachineImages.delete 方法的配额。
compute.googleapis.com/global_resource_write_requests
重量级变更请求(HeavyWeightWriteRequestsPerMinutePerProject)
interconnects 资源的 patchdeleteinsert 方法的配额。
compute.googleapis.com/heavy_weight_write_requests
重量级读取请求 (HeavyWeightReadRequestsPerMinutePerProject)
*.aggregatedList 方法的配额。
compute.googleapis.com/heavy_weight_read_requests

以下配额适用于具有每种方法配额的全局 API:

配额
配额说明
指标名称 默认限额
许可插入请求
licenses.insert 方法的配额。
compute.googleapis.com/license_insert_requests
  • 每个项目的配额 (LicenseInsertRequestsPerMinutePerProject):2.5 个请求/秒(150 个请求/分钟)
  • 每个项目每天的配额 (LicenseInsertRequestsPerDayPerProject):30 个请求/天
项目集常见实例元数据请求
projects.setCommonInstanceMetadata 方法的配额。
compute.googleapis.com/project_set_common_instance_metadata_requests 每个项目的配额 (ProjectSetCommonInstanceMetadataRequestsPerMinutePerProject): 36 次请求/分钟

区域和可用区方法的速率配额

以下部分列出了适用于使用区域指标的方法的所有配额。

简化了区域和可用区方法的 API 配额

下表列出了 Compute Engine API 区域方法和可用区方法的所有简化配额。如需查看区域方法和可用区方法的完整列表以及跟踪每种方法用量的配额指标,请参阅 Compute Engine API 配额指标参考

配额
配额说明
指标名称
每个区域每分钟的读取请求数 (ReadRequestsPerMinutePerProjectPerRegion)
区域和可用区“get”和“list”方法的配额。
compute.googleapis.com/reads_per_region
每个区域的写入请求数 (WritesPerMinutePerProjectPerRegion)
未包含在其他配额指标下的区域和可用区写入方法的配额。
compute.googleapis.com/writes_per_region
每个区域的可用列表请求数 (ListUsablePerMinutePerProjectPerRegion)
区域和可用区 ListUsable 方法的配额。
compute.googleapis.com/list_usable_requests_per_region
每个区域的过滤后的列表费用开销

带有过滤条件的*.list*.aggregatedList 区域和可用区方法的配额。

除了 compute.googleapis.com/reads_per_region 指标的配额之外,Google Cloud 还会针对此指标收取配额使用费。如果从列表请求中过滤出的资源超过 1 万个,则会产生配额费用。如果超出此配额限制,Compute Engine API 会拒绝列表请求。

compute.googleapis.com/filtered_list_cost_overhead_per_region
每个项目的速率(ListRequestsFilterCostOverheadPerMinutePerProjectPerRegion):每分钟每个区域从列表中过滤出 75 万个资源。由于配额按每 1 万个资源计费,因此在 Google Cloud 控制台中查询此配额限制时,您会看到限制为 75(75 万/1 万)。
每分钟每个区域的请求数 (RequestsPerMinutePerProjectPerRegion)

所有区域读取和写入请求的配额。

compute.googleapis.com/requests_per_region

区域方法的旧版 API 配额

下表列出了区域方法和可用区方法的所有 Compute Engine API 配额。

配额
配额说明
指标名称
查询数 (QueriesPerMinutePerRegion)
用于创建、修改或删除 Compute Engine 资源的区域级和可用区级方法的配额。例如,instances.insertdisks.updateinstances.delete 方法。

以下 getlistpatch 方法也使用此 default_per_region 指标:

  • projects.listXpnHosts
  • instances.getScreenshot
  • instances.getGuestAttributes
  • instances.getShieldedInstanceIdentity
  • instances.getEffectiveFirewalls
  • projects.listXpnHosts
  • instanceGroupManagers.listManagedInstances
  • instanceGroupManagers.listErrors
  • instanceGroupManagers.listPerInstanceConfigs
  • regionInstanceGroupManagers.listManagedInstances
  • regionInstanceGroupManagers.listErrors
  • regionInstanceGroupManagers.listPerInstanceConfigs
  • resourcePolicies.patch
compute.googleapis.com/default_per_region
读取请求(旧版)(ReadRequestsPerMinutePerRegion)
区域和可用区 get 方法(例如 autoscalers.getdisks.getinstances.getmachineTypes.get)的配额。
compute.googleapis.com/read_requests_per_region
列出请求(ListRequestsPerMinutePerRegion)
区域和可用区 list 方法(例如 autoscalers.listdisks.listinstances.listmachineTypes.list)的配额。
compute.googleapis.com/list_requests_per_region
过滤后的列表费用开销

带有过滤条件的 *.list*.aggregatedList 方法的配额。

除了 compute.googleapis.com/list_requests_per_regioncompute.googleapis.com/heavy_weight_read_requests_per_region 指标的配额之外,Google Cloud 还会针对此指标收取配额使用费。如果从列表请求中过滤出的资源超过 1 万个,则会产生配额费用。如果超出此配额限制,Compute Engine API 会拒绝列表请求。

compute.googleapis.com/filtered_list_cost_overhead_per_region
每个项目的速率(ListRequestsFilterCostOverheadPerMinutePerProjectPerRegion):每分钟每个区域从列表中过滤出 75 万个资源。由于配额按每 1 万个资源计费,因此在 Google Cloud 控制台中查询此配额限制时,您会看到限制为 75(75 万/1 万)。
操作读取请求(OperationReadRequestsPerMinutePerRegion)
regionOperations.getzoneOperations.get 方法的配额。
compute.googleapis.com/operation_read_requests_per_region
每个区域的全球性资源变更请求数(GlobalResourceWriteRequestsPerMinutePerProjectPerRegion)
disks.createSnapshotregionDisks.createSnapshot 方法的配额。
compute.googleapis.com/global_resource_write_requests_per_region
实例获取串行端口输出请求(GetSerialPortOutputRequestsPerMinutePerProjectPerRegion)
instances.getSerialPortOutput 方法的配额。
compute.googleapis.com/get_serial_port_output_requests_per_region
重量级读取请求 (HeavyWeightReadRequestsPerMinutePerRegion)
regionOperations.waitzoneOperations.waitregionNetworkFirewallPolicies.getEffectiveFirewalls 方法的配额。
compute.googleapis.com/heavy_weight_read_requests_per_region
每个区域的重量级变更请求HeavyWeightWriteRequestsPerMinutePerProjectPerRegion
interconnectAttachments 资源的 patchdeleteinsert 方法以及 networks.updatePeering 方法的配额。
compute.googleapis.com/heavy_weight_write_requests_per_region
实例模拟维护事件请求 (SimulateMaintenanceEventRequestsPerMinutePerProjectPerRegion)
instances.simulateMaintenanceEvent 方法的配额。
compute.googleapis.com/simulate_maintenance_event_requests_per_region
实例列出引荐来源请求InstanceListReferrersRequestsPerMinutePerProjectPerRegion
instances.listReferrers 方法的配额。
compute.googleapis.com/instance_list_referrers_requests_per_region
网络端点写入请求NetworkEndpointWriteRequestsPerMinutePerProjectPerRegion
networkEndpointGroups.attachNetworkEndpointsnetworkEndpointGroups.detachNetworkEndpoints 方法的配额。
compute.googleapis.com/network_endpoint_write_requests_per_region
网络端点列出请求(NetworkEndpointListRequestsPerMinutePerProjectPerRegion)
networkEndpointGroups.listNetworkEndpoints 方法的配额。
compute.googleapis.com/network_endpoint_list_requests_per_region
区域网络端点写入请求(RegionalNetworkEndpointWriteRequestsPerMinutePerProjectPerRegion)
regionNetworkEndpointGroups.attachNetworkEndpointsregionNetworkEndpointGroups.detachNetworkEndpoints 方法的配额。
compute.googleapis.com/regional_network_endpoint_write_requests_per_region
区域网络端点列出请求(RegionalNetworkEndpointListRequestsPerMinutePerProjectPerRegion)
regionNetworkEndpointGroups.listNetworkEndpoints 方法的配额。
compute.googleapis.com/regional_network_endpoint_list_requests_per_region

请求增加速率配额

如果您需要提高发出 API 请求的配额,可以通过 Google Cloud 控制台请求提高 API 配额。如需了解相关说明,请参阅申请配额调整

最佳做法

请遵循维持速率配额的 Compute Engine API 最佳实践,以缓解速率配额的影响。

后续步骤