我想在Google App Engine上执行定期后台作业。每次调用都可能耗尽正常HTTP请求的正常时间限制。
我目前打算在一个方案中将外部servlet配置为cron作业。然后,它通过将内部(Java)servlet添加到任务队列来调用它。然后内部servlet执行后台作业。本质上,外部servlet以声明方式配置(在cron.xml
中),内部servlet以编程方式配置(从外部servlet调用Google Tasks API)。外部servlet本质上是一个“cron job which adds all the pieces [i.e. currently a single inner servlet] to a task queue”。
我的问题是:我可以以某种方式将两个servlet组合成一个可以不间断运行几分钟的实例吗?可以以某种方式在web.xml
或类似的地方传递所需的任务配置吗?
答案 0 :(得分:1)
cron作业servlet具有10 minute请求超时,就像任务队列servlet一样,因此您可以轻松地在cron servlet下运行代码。但是,我仍然会让cron解雇任务,因为这会给你更大的灵活性。例如,如果您愿意,可以从应用程序的任何位置触发任务servlet。