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、访问方法,开始执行

相关推荐
你的人类朋友5 小时前
说说签名与验签
后端
databook6 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室6 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三8 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试
canonical_entropy9 小时前
AI时代,我们还需要低代码吗?—— 一场关于模型、演化与软件未来的深度问答
后端·低代码·aigc
颜如玉10 小时前
HikariCP:Dead code elimination优化
后端·性能优化·源码
考虑考虑10 小时前
Jpa使用union all
java·spring boot·后端
用户25191624271111 小时前
Python之语言特点
python
bobz96511 小时前
virtio vs vfio
后端
刘立军11 小时前
使用pyHugeGraph查询HugeGraph图数据
python·graphql