在Django上运行Celery/Redis时出现意外的关键字参数“timeout”

6bc51xsx  于 2022-10-31  发布在  Redis
关注(0)|答案(1)|浏览(194)

我尝试在AWS上设置一个环境(与我拥有的另一个完美运行Celery的环境相同),但在运行celery -A core worker --loglevel=INFO时遇到了这个问题

[2022-08-03 12:59:06,633: CRITICAL/MainProcess] Unrecoverable error: TypeError("wrapped_func() got an unexpected keyword argument 'timeout'")

我已经试过升级和降级celery /redis/kumbu版本,没有任何效果。
我在这个EC2上打开了一个python shell,测试了Redis连接和它的工作情况

redis_client = redis.Redis(host=settings.REDIS_URL, port=6379)
redis_client.set('key', 'value', nx=True, ex=5)

我不知道我错过了什么..我的版本是

celery==5.2.7
Django==3.1
django-celery-beat==2.3.0
kombu==5.2.4
redis==4.3.4

pip==22.1.2
setuptools==58.0.0
krugob8w

krugob8w1#

我解决了
问题出在这个我用来给懒汉发关于celery 健康的信息的包裹上:“西芹-松弛"
celery-slack最新版本仅与celery〈5兼容,这意味着所有这些模块也会降级:amqp,vine, Django -celery -beat,埃芬,昆布
因此,这些版本可以很好地配合使用:

vine==1.3.0
kombu==4.6.11
ephem==3.7.7.1
django-celery-beat==1.5.0
celery==4.4.7
celery-slack==0.4.1
amqp==2.6.1
redis==4.3.4

相关问题