先设定个初始方案:
- nginx+virtualenv +Supervisor +tornado
Supervisor设置:
mkdir /etc/supervisor
echo_supervisord_conf > /etc/supervisor/supervisord.conf(后面这个是生成的配置文件路径 根据环境制定)
启动Supervisor服务
supervisord -c /etc/supervisor/supervisord.conf
修改/etc/supervisord.conf文件 添加
[program:tornado_poll]
command=python /home/wangwang/helloworld/helloworld.py –port=80%(process_num)02d ; 要执行的命令,这里的“%(process_num)02d”会用2位精度的进程号替换,例如,第一个进程是8001,第二个进程是8002,以此类推,下同。
process_name=%(program_name)s-80%(process_num)02d ; process_name expr (default %(program_name)s) ;启动的进程的名字,这里的名字只是supervisor内部是别用,与你所启动程序的进程名无关
numprocs=2 ; 启动几个tornado进程
directory=/home/wangwang/helloworld ; 运行前cd到此目录
autostart=true ; supervisord守护程序启动时自动启动tornado
autorestart=true ; supervisord守护程序重启时自动重启tornado
user=www-data ; 运行程序前su到此用户
redirect_stderr=true ; 将stderr重定向到stdout
stdout_logfile=/home/wangwang/helloworld/python_log ; 记录控制台输出的日志位置
网友评论