Django应用集成Celery与RabbitMQ的配置求助
Django应用集成Celery与RabbitMQ的配置求助
嘿,各位大佬好!我正在尝试给我的Django应用配置Celery来处理异步任务,目前是在Windows系统上用Docker Desktop运行RabbitMQ作为消息中间件。下面是我已经完成的操作和配置,不过过程中碰到了一些问题,想请大家帮忙看看哪里出了问题或者需要调整~
我的操作步骤
- 启动RabbitMQ的Docker命令:
docker run -it --rm --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq - 启动Celery Worker和Flower监控的命令:
celery -A a_shop worker -l Info celery -A a_shop flower
Django项目里的相关配置
主应用根目录下的__init__.py文件
我在主应用的__init__.py里加了这些内容,确保Celery App能被Django识别:
from .celery import app as celery_app __all__ = ('celery_app',)
settings.py中的Celery配置项
我在Django的settings.py里配置了这些Celery相关参数:
CELERY_BROKER_URL = 'amqp://guest:guest@localhost:5672//' CELERY_RESULT_BACKEND = 'rpc://' CELERY_TASK_ACKS_LATE = True CELERY_WORKER_PREFETCH_MULTIPLIER = 1 CELERY_TASK_SOFT_TIME_LIMIT = 600 # 10分钟 CELERY_TASK_TIME_LIMIT = 1200 # 20分钟 CELERY_IMPORTS = ('orders.task',) CELERY_TASK_DEFAULT_QUEUE = 'celery'
主应用下的celery.py文件
我还在主应用目录下创建了celery.py文件,不过内容没粘贴完整,目前写了这些:
from __future__ import absolute_import, unicode_literals import os from celery import # 这里内容截断了,后续是Celery App的初始化代码
麻烦各位帮忙看看我的配置有没有问题,或者还有什么遗漏的地方?非常感谢!
备注:内容来源于stack exchange,提问作者Pourya Mohamadi
相关产品推荐
相关产品推荐

