likes
comments
collection
share

windows python3.7 celery 出现的各种问题解决方案

作者站长头像
站长
· 阅读数 18

首先描述问题 celery 4.+ 号称不支持windows,所以我用了celery 3.+ 但是问题在于我的python版本用的是3.7 在python3.7+的版本中,async成为了关键词 所以celery3.+ 版本就会报一个async的错误 其实celery 的开发者已在新版本中修复了这个问题 套娃了

由于我不想改python的环境 所以我只能顶着bug用celery4.+ 我选择的是 celery4.3 pip安装指定版本即可

pip install celery==4.3

就解决了async的bug

但是在windows下启动worker的时候还会有另外的错误 win10需要用协程的方式启动celery worker

pip install eventlet

启动worker的时候加一个参数 -P eventlet

celery -A worker -l info -P eventlet

在celery中

from celery import Celery
import os

os.environ.setdefault('FORKED_BY_MULTIPROCESSING', '1') # 加上这句话
app = Celery(XXX)

参考 blog.csdn.net/apple_sir_b… 在此表示感谢