Celery的使用

Celery

  • 一、Celery概述
    • 1. 特点:
    • 2. celery组成
    • 3. 安装与使用
    • 4. 邮箱配置
  • 二、Celery的使用实操——发送邮件
    • 1. 安装
    • 2. 配置

一、Celery概述

在这里插入图片描述

1. 特点:

在这里插入图片描述

2. celery组成

在这里插入图片描述

  1. 配置任务队列Broker,采用redis保存要执行的任务队列

  2. Client:任务的发出者

  3. Worker:任务的处理者

3. 安装与使用

命令:pip install celery

4. 邮箱配置

登录QQ邮箱,点击账户开启邮箱服务

二、Celery的使用实操——发送邮件

1. 安装

在这里插入图片描述

2. 配置

  1. 配置任务队列Broker,采用redis保存要执行的任务队列,主要包含两部分:一部分是保存要执行的任务,一部分是保存执行的结果
    1)在主目录下创建一个名为celery_tasks的文件夹
    在这里插入图片描述
    2) 在该文件夹下创建一个名为celery_config.py的配置文件
    在这里插入图片描述
    3)在主目录的config下已经配置好了redis
    在这里插入图片描述
    4) 配置celery_config.py文件,连接redis数据库。其中broker_url和result_backend这两个变量名是固定写法
    在这里插入图片描述
    5) 创建一个任务的文件夹email,一个任务创建一个文件夹
    在这里插入图片描述

6)配置celery的入口文件,创建一个celery_main.py的文件
在这里插入图片描述
配置以下内容:
在这里插入图片描述

  1. 任务的处理者
    1) 在email文件夹下创建一个名为tasks.py的文件夹。注:tasks.py的文件名固定,不能修改,email的文件名可以自定义。

2) 在settings.py文件中设置邮箱的配置,以QQ邮箱举例。
在这里插入图片描述

在这里插入图片描述

在config文件夹下创建一个名为emailConfig.py的文件夹
在这里插入图片描述
配置内容如下:
在这里插入图片描述
3) 获取QQ邮箱的授权码
登录QQ邮箱——设置——常规——第三方服务——启动IMAP/SMTP服务——生成授权码,获取到授权码,将授权码配置到emailConfig.py中

4) 以上内容配置完后,在tasks.py文件中编写邮件发送的处理函数

import loggingfrom django.core.mail import send_mailfrom celery_tasks.celery_main import app
from drf6 import settings# 创建一个日志器,__name__表示传的是当前这个模块名即文件名
logger = logging.getLogger(__name__)# celery_tasks.celery_main中创建的app,并设置任务名
@app.task(name='send_email_task') 
def send_email_task(email, username, password, classes_name):"""通知邮件任务:param email: 收件人邮箱:param username: 用户名:param password: 密码:param cl

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/425725.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

『功能项目』第三职业弓弩的平A【58】

我们打开上一篇57第二职业法师的平A的项目, 本章要做的事情是实现第三职业弓弩的平A伤害 首先修改脚本:MagicBall.cs 将脚本挂载在Sphere预制体身上 注意组件设置 运行项目 本章做了第三职业弓弩的平A伤害及显示伤害UI 接下来文章的内容: …

如何升级用 Helm 安装的极狐GitLab Runner?

本分分享如何对 Helm 安装的 Runner 进行升级。整个过程分为三步:1、确定 Runner 最新版本或者想要升级的版本是否存在;2、用 Helm upgrade 命令进行升级;3、升级确认。 极狐GitLab 为 GitLab 的中国发行版,中文版本对中国用户更…

Mac笔记本上查看/user/目录下的文件的几种方法

在Mac笔记本上查看/user/下的文件,可以通过多种方法实现。以下是一些常见的方法: 一、使用Finder 打开Finder:点击Dock栏中的Finder图标,或者使用快捷键Command F。 导航到用户目录: 在Finder的菜单栏中&#xff0…

编译运行 webAssembly(wasm)

环境准备&#xff1a; lunix下docker 参考https://hub.docker.com/r/emscripten/emsdk 拉编译环境 docker pull emscripten/emsdk 编译 随便找个目录&#xff0c;敲下面命令&#xff0c;编译一个webAssembly 程序 # create helloworld.cpp cat << EOF > hellowo…

【nginx】搭配okhttp 配置反向代理

nginx的默认是一个反向代理。 nginx会默认把输入的请求,转向其他的服务器执行。 这些转向的服务器与客户端发起的服务器不是同一个。 客户端只认识nginx,不知道ngiix转向何方。 正向代理修改okhttp的proxy,实际上很多代理都是正向的。 反向代理修改请求路径到nginx。 感觉还…

在线IP代理检测:保护您的网络安全

在互联网飞速发展的今天&#xff0c;越来越多的人开始意识到网络安全和隐私保护的重要性。在线IP代理检测工具作为一种有效的网络安全手段&#xff0c;能够帮助用户识别和检测IP代理的使用情况&#xff0c;从而更好地保护个人隐私和数据安全。本文将详细介绍在线IP代理检测的相…

鸿蒙开发之ArkUI 界面篇 五

Image 图片组件&#xff0c;用专门用于显示图片 语法&#xff1a;Image(图片源)&#xff0c;这里可以是网络、也可以是本地的图片 例如&#xff1a;Image(https://wxls-cms.oss-cn-hangzhou.aliyuncs.com/online/2024-04-18/218da022-f4bf-456a-99af-5cb8e157f7b8.jpg)效果如下…

# wps必须要登录激活才能使用吗?

WPS 必须登录激活才能使用吗&#xff1f; 如下图&#xff0c;当我们使用WPS时&#xff0c;不登录会显示工具栏灰色不可用状态。 答&#xff1a;WPS 不一定要登录激活才能使用。 一、免费使用的情况 1、基础功能 在不登录的情况下&#xff0c;用户可以使用 WPS 的一些基础功…

3.Java高级编程实用类介绍(一)

三、Java高级编程实用类介绍(一) 文章目录 三、Java高级编程实用类介绍(一)一、枚举类型二、包装类三、Math 一、枚举类型 使用enum进行定义 public enum 枚举名字{值1,值2.... }二、包装类 每个基本类型在java.lang包中都有一个相应的包装类 /** new包装类&#xff08;字符…

python selenium网页操作

一、安装依赖 pip install -U seleniumselenium1.py&#xff1a; from selenium import webdriver from selenium.webdriver.common.by import Bydriver webdriver.Chrome() driver.get("https://www.selenium.dev/selenium/web/web-form.html") title driver.ti…

uniapp使用高德地图设置marker标记点,后续根据接口数据改变某个marker标记点,动态更新

最近写的一个功能属实把我难倒了,刚开始我请求一次数据获取所有标记点,然后设置到地图上,然后后面根据socket传来的数据对这些标记点实时更新,改变标记点的图片或者文字, 1:第一个想法是直接全量替换,事实证明这样不行,会很卡顿,有明显闪烁感,如果标记点比较少,就十几个可以用…

[数据集][图像分类]茶叶病害分类数据集6749张7类别

数据集类型&#xff1a;图像分类用&#xff0c;不可用于目标检测无标注文件 数据集格式&#xff1a;仅仅包含jpg图片&#xff0c;每个类别文件夹下面存放着对应图片 图片数量(jpg文件个数)&#xff1a;6749 分类类别数&#xff1a;7 类别名称:["Unlabeled","alg…

反编译 AndroidManifest.xml文件-android反编译技术

一、安卓打包后目录 想要查看原来版本配置和关联信息&#xff0c;被打包了&#xff0c;这时候需要工具 AXMLPrinter2.jar 二、反编译环境要求 序号软件说明1java电脑得有java环境2AXMLPrinter2.jarapk中xml解析文件 三、反编译指令 java -jar AXMLPrinter2.jar "C:\Us…

钻机、塔吊等大型工程设备,如何远程维护、实时采集运行数据?

在建筑和工程领域&#xff0c;重型设备的应用不可或缺&#xff0c;无论是在道路与桥梁建设、高层建筑施工&#xff0c;还是在风电、石油等能源项目的开发中&#xff0c;都会用到塔吊、钻机等大型机械工程设备。 随着数字化升级、工业4.0成为行业发展趋势&#xff0c;为了进一步…

【电脑组装】✈️从配置拼装到安装系统组装自己的台式电脑

目录 &#x1f378;前言 &#x1f37b;一、台式电脑基本组成 &#x1f37a;二、组装 &#x1f379;三、安装系统 &#x1f44b;四、系统设置 &#x1f440;五、章末 &#x1f378;前言 小伙伴们大家好&#xff0c;上篇文章分享了在平时开发的时候遇到的一种项目整合情况&…

数据结构——复杂度讲解

已经太久没用更新了&#xff0c;由于各种原因&#xff0c;导致很久没用更新了&#xff0c;但是停更期间我也是一直在很努力的学习与复习之前学过的知识&#xff0c;读了两本C语言的数据&#xff0c;初学者也是可以看的&#xff0c;推荐给大家&#xff0c;如果需要pdf&#xff0…

【车载以太网】【SOME/IP】Wireshark 解析

目录 ​​​​​​​Wireshark 官方插件 相关代码: 启用协议插件 Lua插件 测试数据包 Wireshark 下载链接:Wireshark Go DeepSOMEIP插件介绍:https://www.wireshark.org/docs/dfref/s/someip.html官方插件 Wireshark从3.2版本开始支持SOME/IP,启用相应的插件即可以…

机器学习-梯度下降实验一

import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.model_selection import train_test_split, KFold from sklearn.metrics import mean_squared_error, r2_score from mpl_toolkits.mplot3d import Axes3D # 用于3D图plt.rcParams[fon…

【C++】——继承详解

目录 1、继承的概念与意义 2、继承的使用 2.1继承的定义及语法 2.2基类与派生类间的转换 2.3继承中的作用域 2.4派生类的默认成员函数 <1>构造函数 <2>拷贝构造函数 <3>赋值重载函数 <4析构函数 <5>总结 3、继承与友元 4、继承与静态变…

使用ESP8266和OLED屏幕实现一个小型电脑性能监控

前言 最近大扫除&#xff0c;发现自己还有几个ESP8266MCU和一个0.96寸的oled小屏幕。又想起最近一直想要买一个屏幕作为性能监控&#xff0c;随机开始自己diy。 硬件&#xff1a; ESP8266 MUColed小屏幕杜邦线可以传输数据的数据线 环境 Windows系统Qt6Arduino Arduino 库…