学习celery时遇到的坑

   日期:2024-01-17     浏览:52    评论:0    

1.  报错信息

1. 

def _connparams(self, async=False, _r210_options=(
                              ^
SyntaxError: invalid syntax

原因: async 在 python3.7已经是关键字了,但是celery4.4.6版本没有更新导致的。此问题将在下一个版本修复。

解决办法: 将celery文件中的async命名为其他变量名/ 或者降低python版本3.7之下的

2. 

from kombu.async.timer import Entry, Timer as Schedule, to_timestamp, logger
                   ^
SyntaxError: invalid synta

同上

3. 启动worker 后执行task报错

tasks, accept, hostname = _loc
ValueError: not enough values to unpack (expected 3, got 0)

解决办法:在win10环境下运行celery4.x会出现此问题。先通过pip install eventlet安装eventlet,然后启动worker时添加一个参数: 

celery worker <module> worker -l INFO -P eventlet

 4. 使用redis作为borker时

ERROR/MainProcess] Unrecoverable error: AttributeError("'str' object has no attribute 'items'",)-bug

原因: redis版本过高当时redis版本是3.5.3

解决办法:降低redis版本到2.10.6

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服