Nginx Tornado和Flask - 什么是一个好的开始/停止脚本和保持活动的方法

时间:2011-12-19 05:27:57

标签: nginx tornado flask server-configuration

我已经设置了一个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

很多时候这些都不能顺利运行,我需要手动运行这些命令。此外,我正在寻找一种方法来验证服务是否存在,并在服务失效时启动它。思考?感谢。

1 个答案:

答案 0 :(得分:3)

Supervisor正是您要找的。

这是我用来管理我的Tornado应用以及其他一些处理守护进程的方法。 它将守护,处理日志记录,pid文件......几乎所有你需要的东西。