如何手动设置第二次在gae队列中运行的任务



我有一个任务在GAE队列中运行。根据我的逻辑,我想确定任务是否会再次运行。

我不希望它被队列正常执行,然后再把它放在队列中因为我想有能力检查"X-AppEngine-TaskRetryCount"几次尝试后就放弃了尝试。

据我所知,任务重新执行的唯一情况似乎是发生内部GAE错误时(或者如果我的代码在"DeadlineExceededException"情况下花费太长时间。)

如何以GAE将设置X-AppEngine-TaskRetryCount++的方式将任务重新输入队列??

您可以使用python中的self.error()以编程方式重试/重新启动任务。从文档:应用程序引擎通过返回200–299 范围之外的任何HTTP状态代码来重试任务

在任务开始时,您可以使用测试重试次数

retries = int(self.request.headers['X-Appengine-Taskretrycount'])
if retries < 10 :
    self.error(409)
    return

最新更新