我编写了一个代码来将数据写入自定义指标云监控 - 谷歌应用引擎。
为此,我将数据存储了一段时间,比如说:15分钟进入数据存储区,然后运行一个cron作业并从那里获取数据并在云监控仪表板上绘制数据。
现在我的问题是:在从数据存储区获取大量数据时,cron作业可能会超时。另外我想知道当cron作业失败时会发生什么? 如果记录数量很高,它也会失败吗?如果可以,我们可以做什么替代。安全地cron可以在10分钟的超时时间内处理多少条记录。
如果需要任何其他信息,请与我们联系。
谢谢!
答案 0 :(得分:1)
您可以在instance with basic or manual scaling上运行您的cron作业。然后它可以在你需要的时候运行。
不会重新尝试Cron作业。您需要自己实现此机制。
更好的选择是使用延期任务。您的cron作业应创建尽可能多的任务来根据需要处理数据并将其添加到队列中。在这种情况下,您不必重做整个工作 - 或者记住要从中恢复的地点,因为如果任务失败,任务会自动重试。
请注意,对于任务,如果每个任务执行时间不到10分钟,则可能不需要创建基本/手动扩展实例。
注意:如果可能的话,最好创建大量快速执行的任务,而不是花费几分钟的一个或几个任务。这样,如果任务失败,您可以最大限度地减少资源浪费,并且对同一实例上运行的其他进程的影响较小。