【问题标题】:Using the Google Directory API to provision thousands of users使用 Google Directory API 配置数千名用户
【发布时间】:2013-11-03 23:27:51
【问题描述】:

我正在尝试编写一个使用 Google Directory API 为数千名用户创建邮件帐户的应用程序。一个一个地创建它们是可行的,但是非常慢。我尝试使用假设一次最多支持 1000 个请求的批处理请求。然而,只有大约 50 个用户被成功创建,其余请求抛出 403 错误。如果我将批量大小改为 40,则在第一批之后,许多请求会失败并出现 5xx 错误。

如果批处理请求仍然受到相同速率限制的限制,那似乎毫无价值,因为我可以以如此缓慢的速率单独发送这些请求。有没有更好的方法来做到这一点,或者我应该做些什么?

【问题讨论】:

标签: batch-processing google-admin-sdk google-directory-api


【解决方案1】:

批处理请求肯定会节省网络往返次数(如果您要处理数千个用户,这可能会非常昂贵)。但是,即使是批处理的,服务器仍然需要一个一个地执行请求。查看有关 Admin SDK 的文档

https://developers.google.com/admin-sdk/directory/v1/guides/batch

特别说明说:“一组n个请求一起批处理计入您的使用限制,作为n个请求,而不是一个请求。批处理请求在处理之前被分解为一组请求。”

【讨论】:

  • 即使使用指数退避,也会收到很多 quotaExceeded 错误。由于 Directory API 可能允许每秒 10 个创建,我可以发送一个包含 1,000 个创建的批次,等待 100 秒,然后再发送一个。但是,在当天的第一批中,我收到了配额错误。我结束了将批次限制为每个 12 个创建:这是在没有 quotaExceeded 错误的情况下工作。
猜你喜欢
  • 1970-01-01
  • 2018-12-18
  • 1970-01-01
  • 2017-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-06
  • 2023-03-14
相关资源
最近更新 更多