使用Supervisor管理resque

来源:互联网 发布:港澳台电视直播软件tv 编辑:程序博客网 时间:2024/06/14 07:36

Supervisord是用Python实现的一款非常实用的进程管理工具。相關命令如下,

  • supervisord,初始启动Supervisord,启动、管理配置中设置的进程。
  • supervisorctl stop programxxx,停止某一个进程(programxxx),programxxx为[program:chatdemon]里配置的值,这个示例就是chatdemon。
  • supervisorctl start programxxx,启动某个进程
  • supervisorctl restart programxxx,重启某个进程
  • supervisorctl stop groupworker: ,重启所有属于名为groupworker这个分组的进程(start,restart同理)
  • supervisorctl stop all,停止全部进程,注:start、restart、stop都不会载入最新的配置文件。
  • supervisorctl reload,载入最新的配置文件,停止原有进程并按新的配置启动、管理所有进程。
  • supervisorctl update,根据最新的配置文件,启动新配置或有改动的进程,配置没有改动的进程不会受影响而重启。
  • 注意:显示用stop停止掉的进程,用reload或者update都不会自动重启。

resque是用來操作後臺任務的,主要是因爲其隊列系統比較符合要求。後臺任務都是一些耗時的任務,爲了給前臺友好的用戶體驗。

涉及到job,worker,queue。

使用Supervisor來啓動worker,配置如下

[program:sms]
command = php /usr/share/nginx/html/aug-marketing/src/backend/modules/resque/components/bin/resque
numprocs=1
stderr_logfile_maxbytes=10MB
stdout_logfile=/var/log/supervisor/%(program_name)s-stdout.log
stderr_logfile=/var/log/supervisor/%(program_name)s-stderr.log
redirect_stderr=true
autostart=true
autorestart=true
environment=QUEUE=*,LOGGING='1',APP_INCLUDE='/usr/share/nginx/html/aug-marketing/src/backend/modules/resque/components/lib/Resque/RequireFile.php'


0 0
原创粉丝点击