首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在装有python 3.7的GAE上运行60秒后,Cron作业以504网关超时结束

在装有python 3.7的GAE上运行60秒后,Cron作业以504网关超时结束
EN

Stack Overflow用户
提问于 2018-11-24 21:55:04
回答 1查看 354关注 0票数 2

我使用Python3.7使用google app engine创建了一个新项目,并使用google template创建了django。所有cron作业均失败,504请求超时。此外,我使用google cloud tasks尝试了新的任务队列,但这个请求在60秒后也失败了。

App.yaml

代码语言:javascript
代码运行次数:0
运行
复制
# [START django_app]
runtime: python37

handlers:
- url: /assets
  static_dir: assets/
- url: /.*
  script: auto

instance_class: F2
automatic_scaling:
  min_idle_instances: 1
  max_idle_instances: automatic

Cron.yaml

代码语言:javascript
代码运行次数:0
运行
复制
cron:
- description: cron eth price
  url: /cron/
  schedule: every 5 mins

Cron视图

代码语言:javascript
代码运行次数:0
运行
复制
class CronView(View):
    def get(self, request, *args, **kwargs):
        from time import sleep
        sleep(240)
        return HttpResponse('')
EN

回答 1

Stack Overflow用户

发布于 2018-11-24 23:34:43

这只是一个理论:)

文档中似乎有一点冲突。

一方面来自(第二代标准环境) Scheduling Jobs with cron.yaml

cron作业将在一天中的给定时间使用HTTP请求调用

。cron调用的HTTP请求最长可运行60分钟,但为subject to the same limits as other HTTP requests

相比之下,对于第一代标准环境,来自Deadlines

cron超时期限取决于为您的应用配置的实例类和伸缩类型:

自动缩放

超时时间约为10分钟。

另一方面,来自Instance scaling表中的Deadline行(与the 1st generation信息一致,但可能只是一个文档错误,因为任务队列支持is actually different):

Automatic scaling

HTTP请求60秒截止时间,任务队列任务10分钟截止时间。

..。当然,要记住cron请求是HTTP请求,而不是任务队列任务。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53458853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档