Java GAE:请求需要超过30秒

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”),以避免时

如何禁用特定cron/请求的Google App Engine请求超时

我正在创建一些需要30多秒处理的例程,GAE总是终止我的例程


有什么解决方案吗?

您可能需要查看任务队列

一个选项是有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