小陆同学

python 中文名:蟒蛇,设计者:Guido van Rossum

导航

django--celery 项目部署,进程管理,supervisor的使用

我们可以使用echo_supervisord_conf命令得到supervisor配置模板,打开终端执行如下Linux shell命令:

# echo_supervisord_conf > supervisord.conf

该命令输出文件到当前目录下(当然,你也可以指定绝对路径到具体位置),文件名为supervisord.conf
修改supervisord.conf文件,在文件最后加入:

[program:celery.worker] 
;指定运行目录 
directory=/home/你的项目名称
;运行目录下执行命令
command=celery -A 你的项目名称worker --loglevel info --logfile celery_worker.log
 
;启动设置 
numprocs=1 ;进程数
autostart=true ;当supervisor启动时,程序将会自动启动 
autorestart=true ;自动重启
 
;停止信号,默认TERM 
;中断:INT (类似于Ctrl+C)(kill -INT pid),退出后会将写文件或日志(推荐) 
;终止:TERM (kill -TERM pid) 
;挂起:HUP (kill -HUP pid),注意与Ctrl+Z/kill -stop pid不同 
;从容停止:QUIT (kill -QUIT pid) 
stopsignal=INT
;输出日志 
stdout_logfile=celery_worker.log 
stdout_logfile_maxbytes=10MB ;默认最大50M 
stdout_logfile_backups=10 ;日志文件备份数,默认为10 
 
;错误日志 
redirect_stderr=false ;为true表示禁止监听错误 
stderr_logfile=celery_worker_err.log 
stderr_logfile_maxbytes=10MB 
stderr_logfile_backups=10

 

常用命令

# 启动supervisor输入如下命令,使用具体的配置文件执行:
supervisord -c supervisord.conf

# 关闭supervisor输入如下命令:
            supervisorctl -c supervisord.conf shutdown

# 重启supervisor输入如下命令:
            supervisorctl -c supervisord.conf reload

# 检测运行状态:
        supervisorctl status

 

posted on 2020-08-28 21:25  小陆同学  阅读(492)  评论(1编辑  收藏  举报