参考:http://blog.csdn.net/wawa8899/article/details/52743861

参考:http://www.cnblogs.com/mountaingeek/p/5911291.html

参考:http://www.linuxyw.com/718.html

参考:http://www.iitshare.com/supervisord-manage-process.html

参考:http://stackoverflow.com/questions/20346851/running-celery-as-root

运行生成配置文件:

[root@host /]# echo_supervisord_conf > /etc/supervisord.conf
...
pkg_resources.DistributionNotFound: meld3>=0.6.
找到supervisor-3.3.-py2..egg-info/requires.txt,把文件里面meld3 >= 0.6.5注释掉,然后再执行

配置

[program:dopcelerybeat]
command=python manage.py celery beat
numprocs=
directory=/path/
autostart=true
startsecs=
startretries=
stopwaitsecs=
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/path/logs/supervisord-celery-beat.log
stderr_logfile=/path/logs/supervisord-celery-beat-error.log [program:dopceleryworker]
command=python manage.py celery worker -l info
numprocs=
directory=/path/
autostart=true
startsecs=
startretries=
stopwaitsecs=
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/path/logs/supervisord-celery-worker.log
stderr_logfile=/path/logs/supervisord-celery-worker-error.log [group:dopcelery]
programs=dopcelerybeat,dopceleryworker
; priority= ; the relative start priority (default )

运行celery时报错的解决方法:

1st solution - Manually type command at terminal
$ export C_FORCE_ROOT='true' 2nd solution - Edit shell configuration
$ vi ~/.bashrc # add following line
export C_FORCE_ROOT='true' $ source ~/.bashrc 3rd solution - Edit manage.py of Django
import os if __name__ == '__main__':
os.environ.setdefault('C_FORCE_ROOT', 'true')
os.environ.setdefault('DJANGO_SETTINGS_MODULE', '{PATH TO SETTINGS FILE}') execute_from_command_line(sys.argv)

命令supervisorctl可以使用start/stop/status管理每个进程

[root@d11092353 supervisor-3.3.-py2..egg-info]# supervisorctl
dopcelery:dopcelerybeat STOPPED Dec : PM
dopcelery:dopceleryworker RUNNING pid , uptime ::
supervisor> status dopcelery:dopcelerybeat
dopcelery:dopcelerybeat STOPPED Dec : PM
supervisor>

supervisorctl API:官方文档 http://www.supervisord.org/api.html

import xmlrpclib
server = xmlrpclib.Server('http://127.0.0.1:9900/RPC2')
server.supervisor.getState()
返回 >>> {'statename': 'RUNNING', 'statecode': 1}
server.supervisor.getProcessInfo('group:name')
返回 >>> 任务状态

【Python】supervisor安装和管理celery的更多相关文章

  1. python+selenium安装方法

    一.准备工具: 下载 python[python 开发环境] http://python.org/getit/ 下载 setuptools [python 的基础包工具] http://pypi.py ...

  2. 使用Supervisor管理Celery进程。

    讲过一篇celery的,但是celery启动后并不是daemon的,在生产环境中这肯定是不可以的,那怎么办呢? 这就需要使用supervisor进行进程管理了,下面详细介绍. 一. superviso ...

  3. celery和supervisor配合使用,实现supervisor管理celery进程

    在这里我选择redis作为celery异步任务的中间人,系统选择CentOS6.5 64位.redis.celery和supervisor的安装参见官方文档. 安装完毕后: 1, 创建celery的实 ...

  4. supervisor安装部署文档和管理实例

    Supervisord是用Python实现的一款非常实用的进程管理工具,类似于monit(关于monit见我的博客:用monit监控系统关键进程),monit和supervisord的一个比较大的差异 ...

  5. supervisor python开发的进程管理工具

    Supervisor (http://supervisord.org) 是一个用 Python 写的进程管理工具,可以很方便的用来启动.重启.关闭进程(不仅仅是 Python 进程).除了对单个进程的 ...

  6. Ubuntu 安装和使用 Supervisor(进程管理)

    服务器版本 Ubuntu 16.04 LTS. Supervisor 是一个用 Python 写的进程管理工具,可以很方便的对进程进行启动.停止.重启等操作. 安装命令: $ apt-get inst ...

  7. Supervisor安装与配置(Linux/Unix进程管理工具)

    原文链接:http://blog.csdn.net/xyang81/article/details/51555473 Supervisor(http://supervisord.org/)是用Pyth ...

  8. Mac下Supervisor进程监控管理工具的安装与配置

    Supervisor是一个类 unix 操作系统下的进程监控管理工具. Supervisor是由 Python 写成,可用 Python 的包安装管理工具 pip(Python Package Ind ...

  9. 使用 supervisor 管理 Celery 服务

    使用 supervisor 管理 Celery 服务 Celery 后台运行 如果我们想让celery worker运行在后台而不是终端上,在后台以守护进程的方式运行,我们可以使用supervisor ...

随机推荐

  1. js中遍历对象的属性和值

    今天想看一下js的数组遍历的内容,搜索到了一个关于对象遍历写好的函数,保留一下.以后好用. function allPrpos ( obj ) {   // 用来保存所有的属性名称和值   var p ...

  2. Android ui 测试课堂笔记

    开始接触Android ui测试了,笔记如下 模拟器 Genemotion , the fastest android simulator in the world Android ui 测试工具 S ...

  3. Servlet中The requested resource is not available错误

    自己为了测试servlet,用MyEclipse2015写了一个简单的登录程序. 1.登录页面index.jsp. <%@ page language="java" impo ...

  4. Android 从图库到选择图片onActivityResult接收注意的问题

    从图库选择图片然后返回数据接收处理的时候,这个时候我们可能会遇到一个问题.就是明明我走了返回的代码.但是为什么我的图片路径没有拿到?这个时候可能是Android的api不同导致,因为Android4. ...

  5. Orchard学习笔记

    1.下载Orchard sourcrs资源文件,同时也可以去百度下载中文包 资源地址(https://github.com/OrchardCMS/Orchard/releases/download/1 ...

  6. JS正则截取两个字符串之间的字符串

    match方法 var str = "iid0000ffr"; var substr = str.match(/id(\S*)ff/); console.log(substr) 返 ...

  7. C++工程目录架构

    项目目录结构的问题基本上是个仁者见仁,智者见智的问题,只要自己用着顺手,使用什么样的目录组织结构是没有什么大碍的.当然如果项目很大,参与的人员很多,那么合理的组织一下目录结构还是会有很大的益处的.不同 ...

  8. OA项目笔记-从建立接口 dao impl action jsp等框架实现crud

    1,设计 BaseDao 与 BaseDaoImpl 1,设计接口 BaseDao 1,每个实体都应有一个对应的Dao接口,封装了对这个实体的数据库操作.例 实体 Dao接口 实现类 ======== ...

  9. [系统开发] 一个基于Django和PureCSS的内容管理系统

    这是我刚开发的一套基于Django和PureCSS的内容管理系统,目标是优雅.简洁.实用,目前功能还在完善中. 系统参考了网上的教程,除了文章管理.搜索.RSS,还增加了类别管理.用户管理,以及评论管 ...

  10. windows使用nginx实现网站负载均衡测试实例

    如果你关注过nginx,必定知道nginx这个软件有什么用的,如果你的网站访问量越来越高,一台服务器已经没有办法承受流量压力,那就增多几台服务器来做负载吧.做网站负载可以买硬件设备来实现,比如F5,不 ...