django集成Apscheduler

在django中有时候我们会有一些简单的调度需求,这是可以考虑集成Apscheduler

安装

pip3 install apscheduler
pip3 install django-apscheduler

在django的settings.py文件的INSTALLED_APPS加入'django_apscheduler'

执行python manage.py migrate 会在数据库给Apscheduler新生成两张表,任务表和任务执行表

在django任意app的views.py加入以下代码

复制代码
#views.py
from apscheduler.schedulers.background import BackgroundScheduler
from django_apscheduler.jobstores import DjangoJobStore, register_job, register_events
scheduler = BackgroundScheduler()
scheduler.add_jobstore(DjangoJobStore(), 'default')


@register_job(scheduler, 'cron', id='test5', hour=17, minute=30)
def test_func():
    print("hello,django1")


@register_job(scheduler, 'interval', id='test6', seconds=30)
def test_func2():
    print("hello,django2")


register_events(scheduler)
scheduler.start()
复制代码

django项目一启动,就会生成两个调度任务,一个每天17:30定时执行,另一个每隔30秒执行

如果想要更细粒度的开启、停止任务,就不能在用django-apscheduler,需要对apscheduler做进一步的开发。

posted @   Mars.wang  阅读(605)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示