Google Apps 中的 Cron 作业是不是有时间限制?

Posted

技术标签:

【中文标题】Google Apps 中的 Cron 作业是不是有时间限制?【英文标题】:Is there a time limit to Cron jobs in Google Apps?Google Apps 中的 Cron 作业是否有时间限制? 【发布时间】:2011-03-31 07:54:49 【问题描述】:

我创建了一个 cron 作业来扫描 rss/atom 提要,但想知道这是否有超时。

文档说请求限制为 30 秒; cron 作业是受此限制的常规请求吗?

为了安全起见,我应该将作业分解为每个 cron 作业一次扫描,还是有更好的方法?

我正在考虑让 cron 作业将任务生成到任务队列中来进行资源获取(这样每个任务都可以获取一个资源,并且希望没有一个任务会超过 30 秒的限制)。

任何建议将不胜感激。

【问题讨论】:

【参考方案1】:

Cron 作业的截止日期为 10 分钟,而不是 30 秒。

见App Engine version 1.4 release page:

后台工作不再有 30 秒的限制 - 在此版本中,我们已经 显着提高了对来自任务队列的离线请求的限制 和 Cron:您现在可以不间断地运行长达 10 分钟。

@Alex Martelli 的答案在他写这篇文章时是正确的,但现在已经过时了。

【讨论】:

这个问题现在也已经过时了。 只有我一个人绝对讨厌这个吗?【参考方案2】:

是的,30 秒的最后期限也适用于 cron 作业(就像常规请求和任务队列作业一样)。 “分解”的最佳方式通常是在 task queue 上排队“继续”请求。

【讨论】:

“继续”请求有什么特别之处吗?它只是一项常规任务吗? @download,一项常规任务,您需要使用任何参数从前一个中断的地方继续。对于一个很好的(高级)示例,以及 RSS 提要上下文;-),请查看 code.google.com/p/pubsubhubbub。 这个答案现在已经过时了。 Cron 作业的截止日期为 10 分钟,而不是 30 秒。【参考方案3】:

Cron jobs on manually scaled instances can run for up to 24 hours(它们受到与任务队列相同的限制)。自动缩放的实例仍必须在 10 分钟内完成。

【讨论】:

以上是关于Google Apps 中的 Cron 作业是不是有时间限制?的主要内容,如果未能解决你的问题,请参考以下文章

在 Google Cloud DataProc 上安排 cron 作业

在 Google App Engine 中使用 Cron 作业

如何取消或停止Google App Engine Cron作业

没有在Google App Engine中安排的Cron作业

Google App Engine cron 作业未显示

Google Cloud Functions Cron 作业不工作