本文档列出了 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 )get 和 list 方法的全局配额。 |
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 )带有过滤条件的
除了 |
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 )未包含在其他配额指标下的全局列出和变更方法的配额。 以下
|
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.delete 、images.deprecate 、images.insert 、images.setLabels 、snapshots.delete 、snapshots.insert 、snapshots.setLabels 、machineImages.insert 和 machineImages.delete 方法的配额。 |
compute.googleapis.com/global_resource_write_requests |
重量级变更请求(HeavyWeightWriteRequestsPerMinutePerProject )对 interconnects 资源的 patch 、delete 和 insert 方法的配额。 |
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 |
|
项目集常见实例元数据请求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 |
每个区域的过滤后的列表费用开销 带有过滤条件的 除了 |
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.insert 、disks.update 和 instances.delete 方法。
以下
|
compute.googleapis.com/default_per_region |
读取请求(旧版)(ReadRequestsPerMinutePerRegion )区域和可用区 get 方法(例如 autoscalers.get 、disks.get 、instances.get 和 machineTypes.get )的配额。 |
compute.googleapis.com/read_requests_per_region |
列出请求(ListRequestsPerMinutePerRegion )区域和可用区 list 方法(例如 autoscalers.list 、disks.list 、instances.list 和 machineTypes.list )的配额。 |
compute.googleapis.com/list_requests_per_region |
过滤后的列表费用开销 带有过滤条件的
除了 |
compute.googleapis.com/filtered_list_cost_overhead_per_region 每个项目的速率( ListRequestsFilterCostOverheadPerMinutePerProjectPerRegion ):每分钟每个区域从列表中过滤出 75 万个资源。由于配额按每 1 万个资源计费,因此在 Google Cloud 控制台中查询此配额限制时,您会看到限制为 75(75 万/1 万)。
|
操作读取请求(OperationReadRequestsPerMinutePerRegion )regionOperations.get 和 zoneOperations.get 方法的配额。 |
compute.googleapis.com/operation_read_requests_per_region |
每个区域的全球性资源变更请求数(GlobalResourceWriteRequestsPerMinutePerProjectPerRegion )disks.createSnapshot 和 regionDisks.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.wait 、zoneOperations.wait 和 regionNetworkFirewallPolicies.getEffectiveFirewalls 方法的配额。 |
compute.googleapis.com/heavy_weight_read_requests_per_region |
每个区域的重量级变更请求HeavyWeightWriteRequestsPerMinutePerProjectPerRegion interconnectAttachments 资源的 patch 、delete 和 insert 方法以及 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.attachNetworkEndpoints 和 networkEndpointGroups.detachNetworkEndpoints 方法的配额。 |
compute.googleapis.com/network_endpoint_write_requests_per_region |
网络端点列出请求(NetworkEndpointListRequestsPerMinutePerProjectPerRegion )networkEndpointGroups.listNetworkEndpoints 方法的配额。 |
compute.googleapis.com/network_endpoint_list_requests_per_region |
区域网络端点写入请求(RegionalNetworkEndpointWriteRequestsPerMinutePerProjectPerRegion )regionNetworkEndpointGroups.attachNetworkEndpoints 和 regionNetworkEndpointGroups.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 最佳实践,以缓解速率配额的影响。