使用celery完成頁面靜態化中的celery版本問題

celery處理任務老是出錯

這裏報錯,是celery內部使用redis庫時,報錯,redis接受celery傳入的str類型,而redis要接受的是mapping映射類型,肯定是哪個版本衝突,不兼容

1. 首先先看celery版本問題

django==1.8.1與celery==3.1.25不兼容,可以使用django==1.11與celery==3.1.25搭配 ,

celery==4.0以後使用了python3.5之後推出的async和await定義協程,所以如果想使用celery==4.0及以後版本,則需要python3.5以上最好是python3.6,python3.5也會報錯,django要使用2.0

這是celery版本問題

 

2. 再來看看redis版本,反正是其中之一

解決方案:

查了好久發現原來是因爲以前下的redis版本過高,重裝redis 

sudo pip3 install redis==2.10.6

最好的辦法是捆綁依賴下載

對 Redis 的支持需要額外的依賴。你可以用 celery[redis] 捆綁 同時安裝 Celery 這些依賴

$ pip install -U celery[redis]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章