Django 开发------django-crontab实现服务端的定时任务
一、需求:
想实现类似 Linux 中crontab 的功能。定时执行计划任务。
二、配置:
a、安装插件:
# pip3 install django-crontab
b、在settings.py 进行配置,在项目中使用 django-crontab
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'openvpn',
'django_crontab', #添加此行
)
# 在settings.py中添加以下框架及相应内容:
CRONJOBS=(
# 按照需求时间执行一次你的定时函数
('*/5 * * * *', 'openvpn.cron.update_login'),
('2 */5 * * *', 'openvpn.cron.update_key_status'),
('11 2 * * *', 'openvpn.cron.run_leave'),
#其他调用实例:
# 定时函数输出的内容到指定文件(如果该路径或文件不存在将会自动创建)
#('0 0 1 * *', 'app名.定时函数所在文件名.定时函数名', '>输出文件路径和名称'),
# 在12点10分执行命令
#('10 12 * * *', 'django.core.management.call_command', ['要执行的命令']),
)
c、在app中(与views.py同级)新建cron.py文件
d、django 计划任务 到 系统计划任务 的各种操作:
python3 manage.py crontab add 添加定时任务
python3 manage.py crontab remove 清除定时任务
python3 manage.py crontab show 显示定时任务
e、查看
1、django 计划任务: # python3 manage.py crontab show
2、系统下的计划任务: # crontab -l
到此,配置完成。
IT运维开发路上的点点滴滴。。。