celery broker和backend对接rabbitmq和redis

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/JackLiu16/article/details/84545402

result.ready()

可能一直返回False

把redis重启

127.0.0.1:6379> flushall                         

//删除当前数据库中的所有Key
flushdb
//删除所有数据库中的key
flushall

(venv3) [root@localhost mcelery]# ls
__pycache__  tasksbk.py  tasks.py
(venv3) [root@localhost mcelery]# 

[root@localhost mcelery]# celery -A tasks worker --loglevel=info --pool=solo

#coding=utf-8
from celery import Celery

#broker = 'redis://127.0.0.1:6379/7'
broker = 'amqp://guest:[email protected]:5672/'
backend = 'redis://127.0.0.1:6379/8'

app = Celery('tasks', broker=broker, backend=backend)

@app.task
def add(x, y):
    return x + y
(venv3) [root@localhost mcelery]# python 
Python 3.6.4 (default, Nov 22 2018, 08:20:15) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
Type "help", "copyright", "credits" or "license" for more informtion.
>>> from tasks import add
>>> r = add.delay(34,23)
>>> r.status
'PENDING'
>>> r.ready()
False
>>> r.ready()
False
>>> r.ready()
True
>>> r.ready()
True
>>> r.status
'SUCCESS'
>>> 

参考:https://www.cnblogs.com/cwp-bg/p/8759638.html

http://docs.jinkan.org/docs/celery/getting-started/index.html

https://www.jianshu.com/p/1840035cb510

[email protected]:JackLiu16/mcelery.git

猜你喜欢

转载自blog.csdn.net/JackLiu16/article/details/84545402