我已经设置了一个Flask应用程序,可以在由nginx支持的龙卷风服务器上运行。我已经编写了几个bash脚本来在部署新版本时重新加载服务器配置,但我对它们不满意。基本上我所拥有的是:
# this starts the tornado-flask wrapper
python myapp.py --port=8000 # .. some more misc settings
# this starts nginx
nginx
pkill -f 'myapp.py'
nginx -s stop
cd $APP_ROOT
./script/stop && ./script/start
很多时候这些都不能顺利运行,我需要手动运行这些命令。此外,我正在寻找一种方法来验证服务是否存在,并在服务失效时启动它。思考?感谢。
答案 0 :(得分:3)
Supervisor正是您要找的。 p>
这是我用来管理我的Tornado应用以及其他一些处理守护进程的方法。 它将守护,处理日志记录,pid文件......几乎所有你需要的东西。