Django2.x celery 任务队列

 

 在执行?命令时,发生报错

celery -A celery_tasks.tasks worker -l info

 Celery  -  redis.exceptions.ReadOnlyError: You can't write against a read only replica.

原因:找了大半天,发现redis服务器都为slave服务器,即没有一个是master服务器所以为导致以上报错

解决方法:

# 找到正在运行的redis 进程ID
ps aux | grep redis

# 将现有的redis服务关闭(此处ID为12232)
sudo kill -9 12232

# 修改redis的配置文件
sudo vi redis.conf 

编辑内容,将从属命令注释掉,在此句前加‘#’,并保存退出

# 重启redis服务器
sudo redis-server redis.conf

 再次执行

celery -A celery_tasks.tasks worker -l info

 继续报错:django.core.exceptions.ImproperlyConfigured: Requested setting EMAIL_FROM, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

原因:没有在执行服务器上配置好Django的配置初始化

解决方法:

在tasks.py文件中添加Django的初始化配置

再次执行

celery -A celery_tasks.tasks worker -l info

大功告成!撒花撒花!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值