Celery是Python开发的分布式任务调度模块。
一、安装:
1.安装celery:
pip install celery
2.安装redis:
sudo apt-get install redis-server
3.安装pyredis:
pip install redis
二、使用:
1.新建一个py文件task.py,内容如下:
import time
from celery import Celery
celery = Celery('tasks', broker='redis://localhost:6379/0')
@celery.task
def celery_test(data):
time.sleep(2.0)
print data
if __name__=="__main__":
celery.start()
2.运行celery -A task worker --loglevel==info (task为py文件名)
3.新建py文件test.py用来调用celery,内容如下
from task import celery_test
for i in xrange(10):
celery_test.delay("my running at %s"%str(i))
delay(加上时代码异步运行,不加代表同步运行)
4.运行test.py
python test.py
三、celery+supervisor(后台进程)
1.安装supervisor
pip install supervisor
2.创建supervisor配置文件,命令如下:
echo_supervisord_conf > supervisord.conf
3.编辑supervisord.conf,在最后增加下列内容:
[program:celery]
command=/usr/bin/celery worker -A tasks
directory=/data/www
stdout_logfile=/data/logs/celery.log
autostart=true
autorestart=true
redirect_stderr=true
stopsignal=QUIT
command:运行命令
directory:命令运行目录
4. 运行supervisor
/usr/bin/supervisord (该运行命令根据你的安装路径为准,安装目录为你所使用的python安装目录下的bin目录内,如果有使用virtualenv请自行区分)