提问者:小点点

检查GmailAPI的特定用户帐户配额使用情况


我正在使用GmailAPI。NET客户端发送/获取电子邮件。

最近,我开始收到一些gmail帐户的此消息异常,用于发送/接收电子邮件:

Google.Apis.Requests.RequestError
User-rate limit exceeded.  Retry after 2018-09-25T13:31:30.444Z [429]
Errors [
    Message[User-rate limit exceeded.  Retry after 2018-09-25T13:31:30.444Z] Location[ - ] Reason[rateLimitExceeded] Domain[usageLimits]
]

我想知道是否可以检查特定帐户的项目的每个用户配额使用情况,在控制台中我发现了以下内容:

在每用户每100秒查询中没有数字,问号图标的提示只是说:不显示每用户配额使用情况。

从GmailAPI文档中,我们可以找到:

  • 每个用户速率限制:每个用户每秒250个配额单位,移动平均值(允许短突发)
  • 消息. send方法消耗100个配额单位
  • message. get方法消耗5个配额单位
  • message. list方法消耗5个配额单位
  • 消息.附件. get方法消耗5个配额单位

我认为我没有为任何用户达到每秒250个配额单位,但我想确保并在Google控制台上检查特定用户帐户。这可能吗?

我听说过指数退避,如果你确实打了很多电话,这很合适。就我而言,我不应该打很多电话,所以我想调查并修复它,而不仅仅是实施退避。


共1个答案

匿名用户

控制台没有说明每个用户的配额使用情况,因为每个用户的配额使用情况都不同-列出每个用户的配额使用情况是没有意义的。

推荐使用指数退避。它不仅允许您的使用限制到速率限制,而且也是处理服务器端错误的正确方法。