软件测试|django定时任务

2023-01-09 18:12:03 浏览数 (1)

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',

...

)

代码语言:txt复制
   CRONJOBS = [<br style="box-sizing: border-box;"/> 
代码语言:txt复制
('*/1 * * * *','crontab_test.mycron.my_cron','&gt;&gt; ' os.path.join(BASE_DIR,'info.log') ' 2&gt;&amp;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

0 人点赞