报错信息如下:
Traceback (most recent call last):
File "f:\python36\lib\site-packages\celery\worker\__init__.py", line 206, in start
self.blueprint.start(self)
File "f:\python36\lib\site-packages\celery\bootsteps.py", line 123, in start
step.start(parent)
File "f:\python36\lib\site-packages\celery\bootsteps.py", line 374, in start
return self.obj.start()
File "f:\python36\lib\site-packages\celery\worker\consumer.py", line 280, in start
blueprint.start(self)
File "f:\python36\lib\site-packages\celery\bootsteps.py", line 123, in start
step.start(parent)
File "f:\python36\lib\site-packages\celery\worker\consumer.py", line 884, in start
c.loop(*c.loop_args())
File "f:\python36\lib\site-packages\celery\worker\loops.py", line 103, in synloop
connection.drain_events(timeout=2.0)
File "f:\python36\lib\site-packages\kombu\connection.py", line 288, in drain_events
return self.transport.drain_events(self.connection, **kwargs)
File "f:\python36\lib\site-packages\kombu\transport\virtual\__init__.py", line 847, in drain_events
self._callbacks[queue](message)
File "f:\python36\lib\site-packages\kombu\transport\virtual\__init__.py", line 534, in _callback
self.qos.append(message, message.delivery_tag)
File "f:\python36\lib\site-packages\kombu\transport\redis.py", line 146, in append
pipe.zadd(self.unacked_index_key, delivery_tag, time()) \
File "f:\python36\lib\site-packages\redis\client.py", line 2263, in zadd
for pair in iteritems(mapping):
File "f:\python36\lib\site-packages\redis\_compat.py", line 123, in iteritems
return iter(x.items())
AttributeError: 'str' object has no attribute 'items'
查阅资料后,有人说是因为redis版本的问题,将版本回退到redis2.10.6,这个问题就消失了。
解决办法:
pip install redis==2.10.6