本文共 1246 字,大约阅读时间需要 4 分钟。
本文将指导您如何在 Django 项目中配置 Celery 高效处理任务,帮助您构建高性能的后台系统。
在进行 Celery 配置前,请确保已完成以下准备工作:
根据您的选择,执行相应的安装命令:
安装 RabbitMQ:
apt-get install rabbitmq-serverservice rabbitmq-server restart
安装 Redis:
apt-get install redisservice redis_6379 restart
进入您的 Django 项目目录,修改 settings.py
文件:
CELERY_BROKER_URL = 'rabbitmq://' # 或 'redis://localhost:6379/3'(取决于您选择的存储后台)CELERY_RESULT_BACKEND = 'amqp://'BROKER_INSTANCE = 1CELERY_QUEUE_NAME = 'tasks'CELERY_MAX TASKS = 4CELERYδεςWorkers = (tasks_Worker.my_task, max_concurrent=1)
请根据自身需求调整队列名称和初始任务数,确保与您的任务处理逻辑相匹配。
在项目根目录执行:
python3 manage.py runserver 0.0.0.0:8000
这样可以让您的应用存活于生产环境,这样可以方便地测试 Celery配置。
进入终端执行:
celery -A pc_web_verify worker -l info
这里 -A
是 --always_recast
,保证 Celery 在 Python 3 以下版本也能正常运行。使用 --l info
输出日志级别不过于密集,便于观察运行情况。
登录 Django 项目后端界面,确认任务是否能顺利提交至 Celery 远程工作者。
Q:为什么 Celery worker 不断崩溃?A:这可能是由于 RabbitMQ 地址或协议配置不正确,建议检查 CELERY_BROKER_URL
是否正确。
Q:为什么 Redis 不存数据?A:请确认 Redis 服务是否正常运行,是否可用 redis-cli
连接到 Redis 服务。
如需要优化性能,可参考Celery官方文档,根据项目需求调整各项参数。
本文内容基于 Celery 官方文档精✍微打磨,旨在为开发者提供实用性强、易于理解的配置指导。
转载地址:http://uquxz.baihongyu.com/