Cron Job-具有Google App Engine的纯Django项目

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Cron Job-具有Google App Engine的纯Django项目相关的知识,希望对你有一定的参考价值。

我知道如何在django和应用程序引擎中设置cron作业,但是我如何使用纯django项目在应用程序引擎中设置cron作业。 有指导吗? 谢谢。

答案

请参阅: Cron for Python的计划任务

另一答案

这是不可能的,因为GAE Cron Job使用HTTPDjango使用HTTPS 。 当Cron job发送请求时,由于Django将不安全的请求重定向到HTTPS ,因此它期望HTTP 200作为响应并获取HTTP 301 。 有五个选项:

  1. Django应用的安全级别降低到HTTP (不推荐)

  2. 在GAE上创建一个HTTP>HTTPS代理应用,并将您的cron定向到那里

  3. GAE/GKE上创建一个cron应用并使用它

  4. 尝试使用GAE/GKE设置Celery,而GAE/GKE cron

  5. 将云平台提供商更改为更方便的服务

更新:我刚刚发现cron作业有一个窍门。 您可以使用Cloud Scheduler并通过选择HTTP作为目标(而不是App Engine HTTP!)来设置指向您的项目的HTTPS链接。 这样您将获得理想的结果。

以上是关于Cron Job-具有Google App Engine的纯Django项目的主要内容,如果未能解决你的问题,请参考以下文章

Kubernetes Cron-Job闲置通知

Google Cloud App Engine Cron 服务中断

Google Cloud App Engine Cron服务中断

使用 POST 的 Google App Engine Cron 请求

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

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