【发布时间】:2019-08-02 02:37:34
【问题描述】:
我正在使用谷歌云 crontab 服务来安排对我的 appengine 部署的执行调用,但应用程序每次都会被调用两次。
如果我查看执行日志,它们看起来像:
A 2019-08-01T07:45:57.863504Z [2019-08-01 07:45:57 +0000] [8] [INFO] Reason: App failed to load.
A 2019-08-01T07:45:57.863464Z [2019-08-01 07:45:57 +0000] [8] [INFO] Shutting down: Master
A 2019-08-01T07:45:57.738421Z [2019-08-01 07:45:57 +0000] [23] [INFO] Worker exiting (pid: 23)
A 2019-08-01T07:45:57.738255Z Failed to find application object 'app' in 'main'
A 2019-08-01T07:45:57.690684Z [2019-08-01 07:45:57 +0000] [27] [INFO] Worker exiting (pid: 27)
A 2019-08-01T07:45:57.690578Z Failed to find application object 'app' in 'main'
A 2019-08-01T07:45:55.437836Z [2019-08-01 07:45:55 +0000] [27] [INFO] Booting worker with pid: 27
A 2019-08-01T07:45:55.308841Z [2019-08-01 07:45:55 +0000] [23] [INFO] Booting worker with pid: 23
A 2019-08-01T07:45:55.200388Z [2019-08-01 07:45:55 +0000] [8] [INFO] Using worker: threads
A 2019-08-01T07:45:55.200363Z [2019-08-01 07:45:55 +0000] [8] [INFO] Listening at: http://0.0.0.0:8081 (8)
A 2019-08-01T07:45:55.196688Z [2019-08-01 07:45:55 +0000] [8] [INFO] Starting gunicorn 19.9.0
I 2019-08-01T07:45:53.869998Z GET 502 320 B 3,9 s AppEngine-Google; (+http://code.google.com/appengine) / GET 502 320 B 3,9 s AppEngine-Google; (+http://code.google.com/appengine) 5d4298b100ff0d466ecf07b28f0001657e717765657274796461696c790001323031393038303174303933323337000100
在这里您可以看到每次启动两个工作人员(pid 27,23),即使我没有指定。
我的 cron.yaml 看起来像:
cron:
- description: "regular job"
url: /daily
schedule: every day 21:10
以防万一它需要我的 app.yaml:
runtime: python37
handlers:
- url: /.*
script: auto
includes:
- credentials.yaml
如果我在本地对其进行测试,应用程序将运行一次,因此它肯定在谷歌方面(与 yamls 相关)。完整应用的代码在这里https://github.com/jiwidi/DailyQwertee/blob/master/gcloud-app/
【问题讨论】:
标签: python google-app-engine google-cloud-platform cron cloud