Windows安装部署启动Celery,python
(1)首先需要在Windows中启动redis:
(2)安装必须的Celery依赖库:
- pip install celery
-
- pip install redis
-
- pip install gevent
(3)写一批测试任务tasks.py:
- import time
- from celery import Celery
-
- broker = 'redis://127.0.0.1:6379'
- backend = 'redis://127.0.0.1:6379/1' #最后的1可以换成其他,表示在redis里面的数据库编号
-
- app = Celery('my_task', broker=broker, backend=backend)
-
-
- @app.task
- def add(x, y):
- time.sleep(5)
- return x + y
将上述代码存入名为tasks.py的代码文件,至于tasks这个名字随意。
然后在tasks.py所在目录执行命令:
celery -A tasks worker -P gevent --loglevel=info
注意:在Windows下,如果不指定 -P gevent,celery收到任务但不执行,也就是说不会有任务执行结果。gevent并行库有一个替代的方案是eventlet,也可以 -P eventlet。如果使用eventlet,需要pip install eventlet
(4)接下来后可以使用上面定义的tasks.py里面的任务了:
- from tasks import add
-
- if __name__ == '__main__':
- print('-')
- result=add.delay(1, 2)
- print('--')
运行后,在Windows下通过redis的 GUI工具即可查看此次任务存放的result结果。