3

我遇到了 GAE 后端和任务队列的问题。基本上发生的情况是,在后端执行了几次 url fetch 调用几分钟后,任务甚至没有开始就开始卡住。强制速率下降到 0.10/s,队列几乎没有移动。如果我重新启动后端实例,它只会开始移动,但只会再次达到 0.10/s 的强制速率。

我目前正在处理一个 GAE 项目,该项目需要应用程序遍历大约 70000 个 URL,检索 HTML,检查 HTML 中的值,并根据 HTML 中的值更新数据存储中的一些记录。

该实现涉及一个 cron 作业,该作业每分钟需要大约 300 个 URL,将它们分成 10 个,并将它们分配给任务队列中的不同任务。每个任务都通过它们的 10 个 URL,处理内容。

我正在运行 B4 静态后端实例。任务队列速率为 5/s。最大并发请求数为 8。我也尝试添加任务老化,但没有帮助。

---- 2013 年 10 月 19 日 ----

编辑:我尝试注释掉很多代码并将问题缩小到 URL Fetching。显然,当我删除 URL 获取时,事情运行得非常顺利。不过,我不确定如何解决这个问题,因为我很确定我关闭了所有与连接相关的资源。

4

1 回答 1

0

您可能会达到URL 获取的配额限制,即 3000 API 调用/分钟或 657,000 API 调用/天。

于 2013-11-25T10:40:08.887 回答