0

我在谷歌应用引擎上使用 nodejs,并带有一个 cron 作业的端点。当调用其余端点时,我想在将响应返回给调用者后继续我的 cron 作业。cron 任务将持续大约一个小时。如果运行一个小时或更长时间,GAE 会终止任务吗?我想 GAE 不应该杀死我的 nodejs 服务器进程,因为这样我的应用程序就会停止。我想知道由于 GAE 的一些限制,任务是否有可能提前结束。

4

1 回答 1

2

这取决于您选择的缩放类型:https ://cloud.google.com/appengine/docs/standard/java/an-overview-of-app-engine

基本和手动扩展的请求可以无限期运行,自动扩展对 http 请求有 60 秒的截止日期,对任务队列请求有 10 分钟的截止时间。如果你不确定你有哪种类型的缩放,你可能有自动。

您可以专门为此类任务设置具有基本扩展的微服务;以便您的主要服务可以保持自动扩展。

您还可以将您的 cron 任务分成几个任务,然后使用推送队列将它们菊花链式连接(即您 cron 任务启动,执行一些工作,然后启动 task2 并终止。task2 启动,执行某些工作,启动 task3 并终止。 ETC)

于 2017-11-04T17:21:01.580 回答