Python Django,celery,任务队列

本文介绍了如何在Python Django项目中使用Celery实现任务队列。首先通过pip3安装Celery,然后在celery_tasks/tasks.py定义任务函数。接着启动Celery的worker作为任务处理者,命令为`celery -A celery_tasks.tasks worker -l info`。在应用的views.py视图中作为任务发出者触发任务。
摘要由CSDN通过智能技术生成

安装celery: pip3 install celery    # Django和Flask中使用celery的过程相同。

celery_tasks/tasks.py(定义任务函数,celery_tasks一般是一个包。包名和文件名可以任意。任务发出者和任务处理者是不同的项目,两个项目都需要该任务函数的模块(接口)):

from django.core.mail import send_mail
from django.conf import settings
from celery import Celery  # 导入

# 任务发出者和任务处理者是不同的两个项目。
# 如果任务逻辑涉及到了Django的内容,那么在任务处理者(worker)一端需要进行Django的初始化,否则Django模块无法正常导入。
# import os
# import django
# os.environ.setdefault("DJANGO_SETTINGS_MODULE", "项目名.settings")
# django.setup()  
# Django的初始化代码结束。


# 创建一个Celery类的实例对象 (第一个参数是celery应用名,可以是任意字符串,但一般写任务py文件的目录路径) broker中间人(任务队列)
app = Celery('celery_tasks.tasks', broker='redis://172.16.179.130:6379/8')  # 将任务队列存放到redis中(8号数据库)。

# 定
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值