【发布时间】:2015-05-11 07:43:23
【问题描述】:
我正在开发一个目录应用程序,使用 Google Apps API 将 API 中的所有数据(用户、组、组织单位)存储到数据存储中,然后查询数据存储以显示用户进行搜索和查看。
我正在使用任务加载用户和组。我遵循的方法是从 API 读取数据,然后在循环中创建每个用户的实体,然后查找 nextPageToken,如果它不为空,则分配另一个加载用户的任务。组和 OU 也采用相同的方法。
现在的问题是,如果我在拥有 2k 用户的谷歌域上运行它,它工作正常,但是当我在有 90K 用户的环境中运行它时,它工作正常,直到它达到 12-13k 用户,然后它停止响应并且任务停止响应,并且我的机器上的内存使用率更高,我的本地开发服务器就是这种情况,因为我还没有在 appengine 上部署它。
按照我上面描述的方法有很多后端代码,但是我不确定在这里提供什么,所以请提出您可能认为可能导致问题的问题。我将在此处粘贴 sn-p,无论要求什么!
实际生产服务器的用户数量将翻倍,即接近 200K,这让我很担心。请帮忙!
【问题讨论】:
-
你试过在他们的服务器上运行这个吗?它可能会在测试服务器上遇到一些瓶颈。
-
@gaurav-sachdeva 如果您使用任务队列来完成工作,那么当您降低吞吐量时会发生什么?如果您尝试将
max-concurrent-requests值设置为 1? -
不幸的是,设置 max-concurrent-requests 不是一个选项,因为完成 20 万用户需要很长时间。
标签: java google-app-engine jakarta-ee google-api google-apps