Heroku WORKER Dyno(在python环境中运行)在30分钟后进入睡眠状态。工作人员执行“芹菜期”任务计划以向用户发送电子邮件。
这是显示实际行为的日志”:
2019-05-29T12:49:02.273852+00:00 heroku[web.1]: Idling
2019-05-29T12:49:02.278946+00:00 heroku[web.1]: State changed from up to down
2019-05-29T12:49:02.288616+00:00 heroku[worker.1]: Idling
2019-05-29T12:49:02.306209+00:00 heroku[worker.1]: State changed from up to down
2019-05-29T12:49:03.087205+00:00 heroku[worker.1]: Stopping all processes with SIGTERM
2019-05-29T12:49:03.101608+00:00 app[worker.1]:
2019-05-29T12:49:03.101688+00:00 app[worker.1]: worker: Warm shutdown (MainProcess)
2019-05-29T12:49:03.185191+00:00 app[worker.1]: [2019-05-29 12:49:03,184: INFO/MainProcess] beat: Shutting down...
2019-05-29T12:49:03.297659+00:00 heroku[web.1]: Stopping all processes with SIGTERM
2019-05-29T12:49:03.324661+00:00 app[web.1]: [2019-05-29 12:49:03 +0000] [4] [INFO] Handling signal: term
2019-05-29T12:49:03.326185+00:00 app[web.1]: [2019-05-29 12:49:03 +0000] [11] [INFO] Worker exiting (pid: 11)
2019-05-29T12:49:03.326993+00:00 app[web.1]: [2019-05-29 12:49:03 +0000] [10] [INFO] Worker exiting (pid: 10)
2019-05-29T12:49:03.626898+00:00 app[web.1]: [2019-05-29 12:49:03 +0000] [4] [INFO] Shutting down: Master
2019-05-29T12:49:03.758456+00:00 heroku[web.1]: Process exited with status 0
2019-05-29T12:49:04.817520+00:00 heroku[worker.1]: Process exited with status 0
Run Code Online (Sandbox Code Playgroud)
根据研究,我的理解是,web测功机进入睡眠状态,但worker测功机将不会睡眠。
https://devcenter.heroku.com/articles/free-dyno-hours:
网页:
如果某个应用具有免费的网络测功机,并且该测功机在30分钟内未收到任何网络流量,则它将休眠。
警告注意:工人dynos不会睡觉,因为它们不响应Web请求。请注意这一点,因为它们可能会以24/7的速度运行并消耗您的时间。
我原本希望网络处于闲置状态(平均250小时),而运行Celery beat的全天候24/7的工作人员(750小时),将主要与计划保持一致。
到目前为止,我已经激活了:https : //uptimerobot.com/,并在5分钟内ping到了Web dyno使其保持运行状态,但是长达一个月的时间还不够。有了这两个测功机似乎保持清醒。
任何想法为什么会这样?潜在的解决方案?
现在,您的两个程序都使用您帐户上共享“小时池”中的小时数。如果您的正常运行时间机器人每 5 分钟 ping 一次您的网络测功机(这意味着它没有时间休眠,并且只要正常运行时间机器人正在运行,它就会一直处于运行状态)并且您的工作测功机 24/7 都处于运行状态,那么您根本就不会能够 24/7 免费一起运行它们,即使您保存了信用卡。如果你不断地对网络测功机执行 ping 操作,那么网络测功机就不会闲着。
我不完全确定你从哪里得到 250 小时的数字,但如果你想并排运行这些,你必须让其中一个测功机休眠。现在,由于正常运行时间机器人,这种情况还没有发生,因此您可能尝试每月使用 1460/1000 测功小时并关闭测功机。
| 归档时间: |
|
| 查看次数: |
323 次 |
| 最近记录: |