我们的客户在我们的appengine python应用程序中遇到问题,需要任务队列处理来生成报告并在完成后立即显示。对于我们熟悉的GAE缓慢和超时的解决方法直到最近才对我们有效。
上周,我们开始抱怨用户需要等待报告的时间。过去最多只需要一分钟,但现在可能需要10分钟以上。
此外,我无法重现问题,但是查看任务队列,我可以看到这些任务根本没有开始。
Bellow是其中一个队列的屏幕截图(不是生成报告的队列,但问题出现在所有队列中)。
http://www.clipular.com/c/4829223501430784.png?k=QaP2kedZm6NcvrKzwVSJqq2YI1g
我们可以看到没有任务正在运行,但队列中的唯一任务在完成7分钟等待之后才开始。看看ETA,它预测任务应该从过去开始。最终它开始了,但为什么它没有早点开始呢?
我已经排除的理由:
答案 0 :(得分:0)
此问题在没有任何操作的情况下停止发生。显然,这是由于GAE服务器出现某种故障。问题持续了大约两个星期。
然而,可以将问题最小化的一个操作是将您的任务分散到不同的队列中。
---编辑---
它再次发生。我们唯一可以解决问题的方法是编写一个脚本,如果找到它们,它会不断要求运行后期任务。它通过tampermonkey在https://console.cloud.google.com/appengine/taskqueues上运行。