【发布时间】:2021-06-19 00:52:49
【问题描述】:
我是一个应用程序的开发人员,在该应用程序中,用户请求会导致对 Google Drive API 的调用。 针对 Google Drive API 的所有请求都是使用来自服务器数组/副本的 Java API 在服务器端完成的。我们目前正在运行大约五台服务器。
我们现在看到,有时来自用户的请求在某种程度上达到了峰值,因此针对 Google Drive API 的并发请求超过了 10 个。这使得一些请求失败并显示消息:
超出用户速率限制。用户请求率超过配置的项目配额。您可以考虑重新评估 API 的预期每用户流量,并相应地调整项目配额限制。您可以在 API 控制台中监控总配额使用情况并调整限制:https://console.developers.google.com/apis/api/drive.googleapis.com/quotas?project=xxxxxxxxx
我创建了一个单元测试,在其中我同时启动 11 个线程来执行对 Google Drive 文件的获取请求。始终有一个请求失败,而其他 10 个请求成功。 对于单元测试和生产代码,我将 quotaUser 参数设置为唯一值。
Google Analytics API 具有每秒最大请求数的配额,如下所述: https://developers.google.com/analytics/devguides/reporting/mcf/v3/limits-quotas
每个 IP 地址每秒 10 次查询 (QPS)
我无法找到与 Google Drive API 相同的“10 次请求/秒”配额的文档,因此我不希望它存在。
限制功能对我来说真的不是一个选项,因为我将来可能会有超过 10 个服务器副本,因此将无法阻止超过 10 个同时请求。
总的来说,我离一般项目配额请求限制配置还差得很远。
为什么会得到这个 10 请求/秒的配额限制?
【问题讨论】:
标签: google-api google-drive-api