AppEngine-Node云任务处理程序的超时时间是多少?

时间:2018-11-16 11:40:34

标签: google-app-engine google-cloud-platform google-appengine-node

我有一个应用程序,该应用程序在后台使用默认的Cloud Tasks调度/执行流程,在后台执行一些工作。

我希望这项工作能够运行几分钟,或者至少了解实际的限制是什么,并且我可以对此做些什么。

根据docs on Push Queues(这似乎相当于现代的Cloud Tasks?),自动扩展的期限为10分钟,基本扩展的期限为24小时。

但是,我的工作似乎在2分钟后崩溃了。 115秒很好,121秒是崩溃。在所有情况下,工作负载和资源消耗都是相同的。该消息始终无济于事:“处理此请求的进程意外死亡。这很可能导致新的进程用于对您的应用程序的下一个请求。(错误代码203)”。

我使用自动缩放F2实例还是基本缩放B2都没关系。 2分钟后终止。

根据docs on Node request handling,“请求处理程序”有60秒的超时时间

最后的超时时间是多少?是1分钟,2分钟还是10分钟?如果我希望我的工作运行5到30分钟,我可以做些什么来更改它。

1 个答案:

答案 0 :(得分:0)

总之,我认为对您的情况有帮助的最佳推论是Node's Request Timeout,默认情况下,确切的超时时间为2分钟


朗,在阅读完您的问题之后。我决定用它来创建PoC

  1. 创建了仅使用内置HTTP服务器的Dummy Node 8服务
  2. 创建了一个人为地响应较长的URL路径(使用setTimeout),并可以指定请求的持续时间(例如,/lr/300表示它将在5分钟内响应)
  3. 将其部署到default之外的其他GAE服务(Node8,自动缩放)
  4. 创建了向上述服务请求/lr/540的Cloud Tasks“任务”

之前: Before

如您所见,Cloud Tasks和App Engine等待超过2分钟的问题,并且收到与您相同的无用消息(处理此请求的过程意外死亡...)

然后:Code

我写这行是为了增加全局请求超时

结果是:Result

就我而言,我可以肯定地说是导致问题的节点请求超时。我希望这对您也有用。