环境搭建:html
1. 安装celery4.0版本以上python
2.安装erlang的运行环境,由于rabbitmq是基于erlang环境的; 下载连接:http://www.erlang.org/download.html git
3. 安装rabbitmq ,下载连接:http://www.rabbitmq.com/download.htmgithub
demo测试:app
建立tasks.py测试
from celery import Celery app = Celery('tasks',backend='',broker='amqp://guest@localhost//') @app.task def add(x, y): return x + y
在项目根目录下面的命令行里运行:celery -A tas worker --loglevel=info启动任务spa
而后打开python的命令行模式:命令行
>>>from tasks inport add日志
>>>add.delay(1,3)code
运行以后就会在cmd的那个窗口里面打印日志的
若是运行的时候报错ValueError: need more than 0 values to unpack
则用celery -A tas worker --loglevel=info -P eventlet启动任务,官网说是4以上版本就有这问题,具体能够参考这个https://github.com/celery/celery/issues/4081
最后添加任务监控:安装Flower
而后当前项目环境下运行celery flower --broker=amqp://guest:guest@localhost:5672//