Django异步执行任务django-background-tasks

1、安装

pip install django-background-tasks

2、注册服务

python 复制代码
INSTALLED_APPS = [
    ...
    'background_task',
]

3、生成表

python 复制代码
// 生成迁移
python manage.py makemigrations
//运行迁移
python manage.py migrate

4、创建文件,模拟任务

python 复制代码
from background_task import background # type: ignore
import time

@background(schedule=10)  # 任务将在 10 秒后执行
def send_email_task(subject, message):
    print(f"Sending email: {subject}, {message}")
    time.sleep(20)  # 模拟耗时操作
    print("Email sent successfully!")

5、调用

python 复制代码
def tasks_list(request):
    #测试执行任务
    for i in range(3):
        print(i)
        send_email_task('Hello', 'This is a test email')
        #time.sleep(1)
        # 返回字符串
    return HttpResponse('Not Found')  # 正确:返回一个 HttpResponse 对象    

6、启动后台进程

python 复制代码
python manage.py process_tasks

7、访问方法,开始执行

相关推荐
eqwaak0几秒前
MySQL 超详细安装教程与常见问题解决方案
数据库·python·mysql·adb·语言模型
努力的搬砖人.5 分钟前
搭建一个Spring Boot聚合项目
java·spring boot·后端
林太白10 分钟前
Nest如何连接数据库
前端·后端·node.js
这里有鱼汤14 分钟前
我用Python写了个实时板块资金热力图 🎨💰
python
IT果果日记19 分钟前
ubuntu安装DolphinScheduler
大数据·后端
这里有鱼汤22 分钟前
Python数据结构深入讲解:列表、字典、元组,彻底搞懂!
后端·python·编程语言
无奈何杨22 分钟前
Redis/Redis Stack Time series时序等模块
后端
小鱼人爱编程40 分钟前
糟糕,又得重新认识上古技术--Servlet/JSP
java·前端·后端
Aska_Lv40 分钟前
RocketMQ---如何保证消息的顺序性
后端
东方醴歌41 分钟前
本地Docker部署开源AI功能笔记Blinko并实现跨网络环境远程使用
开发语言·后端·golang