[英]Disable reloader of gunicorn flask application
当我在本地机器上运行 flask 服务器时,我使用此代码
app.run(host='0.0.0.0', port=port,debug=False,use_reloader=False)
我正在使用 BackgroundScheduler,所以我需要重新加载器为 false 否则 BackgroundScheduler 将运行两次。
from apscheduler.schedulers.background import BackgroundScheduler
当我部署到 Heroku 时,我像这样使用 gunicorn
web: gunicorn app:app
所以问题是使用这个时 reloader 是真的,所以 BackgroundScheduler 有两个实例。
那么如何停止 Gunicorn 的重新加载?
任何帮助将不胜感激。
如上图所示,创建了 2 个进程。
先感谢您
您可以在 heroku 中提供与命令行 arguments 相同的 arguments:
web: gunicorn app:app --reload=False
这确实为您的问题提供了答案,但它不会解决问题,因为--reload
的默认值已经是False
。 您可以使用gunicorn --help
进行检查。
我认为您不应该使用BackgroundScheduler
,而应使用--daemon
标志。 根据gunicorn --help
: -D, --daemon - Daemonize the Gunicorn process. [False]
-D, --daemon - Daemonize the Gunicorn process. [False]
。 “To Daemonize”意味着将其作为后台进程运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.