Java GAE:请求需要超过30秒
如何禁用特定cron/请求的Google App Engine请求超时 我正在创建一些需要30多秒处理的例程,GAE总是终止我的例程Java GAE:请求需要超过30秒,java,google-app-engine,servlets,timeout,Java,Google App Engine,Servlets,Timeout,如何禁用特定cron/请求的Google App Engine请求超时 我正在创建一些需要30多秒处理的例程,GAE总是终止我的例程 有什么解决方案吗?您可能需要查看任务队列 一个选项是有10分钟时间限制的 另一个是,没有时间限制 我已经使用后端来运行需要更多CPU时间的任务,而且效果很好。 虽然它是基于python的,但我相信这个概念应该是相同的 A.使用cron执行任务 例如: B.cron执行的任务在前端运行,所以它仍然有时间限制。因此,我将任务转发到后端(名为“worker”),以避免时
有什么解决方案吗?您可能需要查看任务队列 一个选项是有10分钟时间限制的
另一个是,没有时间限制 我已经使用后端来运行需要更多CPU时间的任务,而且效果很好。 虽然它是基于python的,但我相信这个概念应该是相同的 A.使用cron执行任务 例如: B.cron执行的任务在前端运行,所以它仍然有时间限制。因此,我将任务转发到后端(名为“worker”),以避免时间限制 C.在后端,接收转发的任务并处理例程作业
我同意,您可以使用任务队列,这些队列的超时时间为10分钟,我刚刚在最近的一个项目中使用了任务队列,并且我做了一些代码,如果需要10分钟以上的时间,可以使用方便的参数将同一个任务重新排队,因此我避免使用更昂贵的后端。我是通过后端cron完成的,但我30岁就要休息了你有什么事吗?它有5秒的超时时间。
cron:
- description: Start Backend to parse the log
url: /_ah/start/ParseLog/
schedule: every day 00:00
class ParseLogStarter(webapp.RequestHandler):
# run on frontend
def get(self):
self.post()
def post(self):
date = self.request.get("date")
# do nothing but forwarding to backend "worker"
taskqueue.add(url="/_ah/ParseLog/", params={"date":date}, target='worker')
class ParseLogWorker(webapp.RequestHandler):
# run on backends
def get(self):
self.post()
def post(self):
# do your routines job here