Taskqueue设置精确/近似执行时间

时间:2011-03-22 12:08:17

标签: python google-app-engine batch-processing task-queue

是否可以在GAE上设置精确或至少近似的计划任务执行时间,该任务将以指定的速率(5 / s,100 / h)执行?

1 个答案:

答案 0 :(得分:6)

如果您希望在特定时间定期发生某些事情,那么您应该使用cron。创建一个处理程序,它将生成任务并让cron在某个时间触发它。

如果你需要以编程方式执行此操作(即,使用cron不够常规),那么在创建任务队列任务时,可以在任务队列中设置countdown以延迟任务运行。

  

[倒计时]此任务应执行的未来秒数,从插入时间开始计算。目前默认为零。

请参阅Task

所以说你想在今天下午5点执行你的任务,你可以计算你希望你的任务在几秒钟内执行的粗略时间,然后将任务添加到队列中:

seconds_til_start = (datetime(2011,3,22,17,00) - datetime.now()).seconds
taskqueue.add(url='/yourtask', countdown=seconds_til_start)