django定时任务
  X7HGjGJ7MG9G 2023年11月02日 152 0

django定时任务

<br style="box-sizing: border-box;"/>

最近在做django项目时,需要在项目运行过程中运行定时任务,下面是调研的几种方法。

<br style="box-sizing: border-box;"/>

一、django-contab插件

1、安装:pip install django-crontab<br style="box-sizing: border-box;"/>

<br style="box-sizing: border-box;"/>

2、定时测试脚本:<br style="box-sizing: border-box;"/>

<br style="box-sizing: border-box;"/>

3、在settings.py上配置:<br style="box-sizing: border-box;"/>

INSTALLED_APPS = (

'django_crontab',

...

)

CRONJOBS = [<br style="box-sizing: border-box;"/> 

('*/1 * * * *','crontab_test.mycron.my_cron','>> '+os.path.join(BASE_DIR,'info.log')+' 2>&1')

]<br style="box-sizing: border-box;"/>

<br style="box-sizing: border-box;"/>

4、启动定时任务

说明:定时器一般只用于linux系统,linux本身带了crontab的定时任务功能

使用下面的命令将定时任务写入系统的crontab中,在系统中使用crontab –l可以看到

python ​​manage.py​​ crontab add<br style="box-sizing: border-box;"/>

删除定时任务命令

Python ​​manage.py​​ crontab remove

查看定时任务

Python ​​manage.py​​ crontab show

<br style="box-sizing: border-box;"/>

二、APScheduler

1、安装<br style="box-sizing: border-box;"/>

pip install apscheduler

2、在settings.py上配置:

INSTALLED_APPS = [<br style="box-sizing: border-box;"/> ......<br style="box-sizing: border-box;"/> 'django_apscheduler',#定时执行任务<br style="box-sizing: border-box;"/>]

3、执行迁移命令:

python ​​manage.py​​ migrate

<br style="box-sizing: border-box;"/>

4、使用<br style="box-sizing: border-box;"/>

<br style="box-sizing: border-box;"/>

5、启动定时任务

sched.start()

<br style="box-sizing: border-box;"/>

DON'T

WORRY

BE

HAPPY


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
X7HGjGJ7MG9G
最新推荐 更多