云 运行 正在关闭容器,即使我的脚本仍在 运行ning

cloud run is closing the container even if my script is still running

我想 运行 在云 运行 上做一份长期 运行 宁的工作。此任务可能会执行超过 30 分钟,并且它主要发送 API 个请求。 云 运行 在大约 20 分钟后停止执行,从指标来看,它似乎没有识别出我的任务仍处于 运行ning 状态。所以它可能认为它正在闲置并关闭容器。我想我可以 运行 在作业 运行 保持容器活动的同时调用服务器,但是有没有办法从容器向云发出信号 运行 作业仍然处于活动状态而不是关闭容器?

我可以看出它正在关闭容器,因为日志刚刚停止。然后,我对云 运行 端点进行的下一次调用,我可以再次从 NodeJS Express 中看到 "listening" 日志。

根据 documentation,云 运行 将在 15 分钟后超时,并且无法增加该限制。因此,对于 运行ning 长的任务,Cloud 运行 并不是一个很好的解决方案。如果您的工作需要 运行 很长时间,请考虑将工作委托给 Compute Engine 或其他没有时间限制的产品。

I want to run a long-running job on cloud run.

这是一条红鲱鱼。

在云端 运行,不保证会使用相同的容器。已经尽力了。

虽然您不处理请求,但您的 CPU 将被节流到接近 0,因此您现在正在尝试做的事情(运行正在执行后台任务并试图保持通过发送请求让容器存活)不是一个好主意。您的应用程序模型很可能不适合 Cloud 运行,我推荐其他计算产品也可以让您 运行 long-running 处理。

是的,您可以 use.You 可以创建一个计时器,它会在 5 分钟后调用您自己的 api,因此在 15 minutes.Whenever 计时器执行后没有超时,它将创建一个虚拟请求你的服务器。

如果您的后端请求在 1 小时内完成,您可以将容器的请求超时从 5 分钟增加到 1 小时的其他选项