检查Google App Engine任务队列状态

9 投票
3 回答
4271 浏览
提问于 2025-04-16 20:25

我正在把几个任务放进一个任务队列里,想知道具体的任务什么时候完成。我在API里没找到关于回调函数或者检查任务状态的相关内容,所以我想看看其他人是怎么做的,或者有没有什么解决办法(或者官方的方法)来检查。我不关心每个任务的完成情况,如果有帮助的话,我放了6个不同的任务,想知道这6个任务什么时候都完成。

谢谢!

3 个回答

2

你可以使用memcache。为这个任务组使用一个独特的键。启动任务时设置一个计数,每个任务在完成时都要把这个计数减一。当这个计数变成0时,说明你的任务都完成了。找到计数为0的那个任务可以调用你的回调函数。

2

你可以试着用管道API来实现这个功能。你可以让某个任务依赖于所有6个任务,然后就可以开始执行了。

http://code.google.com/p/appengine-pipeline/

祝你好运。

4

新的REST/JSON任务队列接口可以让你做到这一点。

http://code.google.com/appengine/docs/python/taskqueue/rest.html

不过,这种方法在处理成千上万的任务时效果不好……

不过,我还是很喜欢管道API的建议!

撰写回答