【问题标题】:GAE - Run scheduled cron jobs longer than 60 secGAE - 运行超过 60 秒的计划 cron 作业
【发布时间】:2017-10-22 06:50:34
【问题描述】:

我使用 Python 在 GAE 上每 24 小时运行一次非常小的 cron 作业。从昨天开始,我收到了 DeadlineExceededErrors,原因是作业超过了 60 秒。就像我说的那样,我的工作很小,所以不会超过 5 分钟,但不幸的是 60 秒的最后期限。

我已经知道,这是一个常见问题,并在 Google 上找到了很多链接和解决方法,但我无法解决问题。

有没有人知道增加截止日期最大值或异步安排任务以解决这 60 秒截止日期的好方法?

【问题讨论】:

标签: python google-app-engine cron


【解决方案1】:

您的 cron 作业应该只是 start a task。这将花费不到一秒钟的时间。一个任务最多可以运行 10 分钟。

您可能还想了解 App Engine 上的different types of scaling methods

【讨论】:

    【解决方案2】:

    您可能想要设置一个没有截止日期的后端服务(模块)。然后将 target: backend-module 参数添加到您的 cron 作业中。

    【讨论】:

    • 感谢您的回答!我找了它,但它似乎已被弃用cloud.google.com/appengine/docs/standard/java/backends
    • 这个概念没有改变。他们更改了名称和配置:cloud.google.com/appengine/docs/standard/java/… 您设置了一个单独的(后端)服务,具有更长(或没有)截止时间超时。然后在您的 cron 作业中使用 target 参数来指向该服务。如果您只需要超过 60 秒且不到 10 分钟的任务,那么排队任务是一个很好的解决方案。
    • 对不起,我误解了,所以在我的情况下排队是完美的,但我将来也需要这个!谢谢你在这方面的知识帮助了我很多! +1
    猜你喜欢
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-25
    • 2016-03-06
    • 2016-06-12
    • 2016-07-17
    相关资源
    最近更新 更多