使用django-crontab实现定时任务的示例
今天打算在自己的 Django 应用中添加一个定时任务来定时执行一些定期检查的功能,因此想到了使用 django-crontab 插件可以满足我的需求,下面就是这个插件的使用方法。
首先使用pip安装 django-crontab 插件
pip install django-crontab
创建要定期执行的脚本和方法,这里假设脚本名称叫cron.py,内容如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- def check(): print "hello django-crontab"
然后在自己应用的 settings.py 文件中添加这个app
INSTALLED_APPS = ( ... 'django_crontab', )
同时在 settings.py 文件中添加 CRONJOBS 配置,内容如下:
CRONJOBS = [ ('*/1 * * * *', 'cron.check','>>/tmp/test.log') ]
其中:
- 第一个参数是 cron 表达式,定义定时任务的执行时间。
- 第二个参数是要执行的模块和函数。
- 第三个参数是执行定时脚本时日志文件的路径。
定义了定时任务和脚本,下面看看怎样使其生效。
首先查看一下系统中已有的 cron job
python manage.py crontab show
添加和修改 cron job
python manage.py crontab add
删除 cron job
python manage.py crontab remove
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Django+Celery实现定时任务的示例
目录 一.前言 二.配置使用 定义与触发任务 扩展 三.Django中使用定时任务 二次开发 一.前言 Celery是一个基于python开发的分布式任务队列,而做python WEB开发最为流行的框架莫属Django,但是Django的请求处理过程都是同步的无法实现异步任务,若要实现异步任务处理需要通过其他方式(前端的一般解决方案是ajax操作),而后台Celery就是不错的选择.倘若一个用户在执行某些操作需要等待很久才返回,这大大降低了网站的吞吐量. 另一方面,当我们需要处理一些定时任务时
-
Django crontab定时任务模块操作方法解析
Django crontab定时任务 安装 pip install django-crontab 配置 在settings.py中 INSTALLED_APP中添加'django_crontab' CRONJOBS = [ ('*/1 * * * *','echo "hello world" > /dev/null') ] 应用 函数 def demo(): 你所要执行的业务逻辑 CRONJOBS = [ ('*/1 * * * *','demo函数路径" ') ] 查
-
python Celery定时任务的示例
本文介绍了python Celery定时任务的示例,分享给大家,具体如下: 配置 启用Celery的定时任务需要设置CELERYBEAT_SCHEDULE . Celery的定时任务都由celery beat来进行调度.celery beat默认按照settings.py之中的时区时间来调度定时任务. 创建定时任务 一种创建定时任务的方式是配置CELERYBEAT_SCHEDULE: #每30秒调用task.add from datetime import timedelta CELERYBEA
-
详解django中使用定时任务的方法
今天介绍在django中使用定时任务的两种方式. 方式一: APScheduler 1)安装: pip install apscheduler 2)使用: from apscheduler.scheduler import Scheduler from django.core.cache import cache # 实例化 sched = Scheduler() # 每30秒执行一次 @sched.interval_schedule(seconds=30) def sched_test():
-
Django中通过定时任务触发页面静态化的处理方式
Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由Python写成. Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 . Django采用了MVC的软件设计模式,即模型M,视图V和控制器C. 本章节给大家介绍Django中通过定时任务触发页面静态化的处理方式,具体内容如下所示: 安装 pip install dja
-
详解linux下利用crontab创建定时任务
Linux下可以利用crontab创建定时任务. 常用搭配 crontab -e 编辑任务 crontab -l 查看所有任务[该用户] crontab -r 取消所有任务[该用户] 任务格式 × × × × × +命令(具体任务) 前5个参数表示时间,依次为: 参数 范围 分钟 0-59 小时 0-23 日期 1-31 月份 1-12 星期 0-6(0代表星期日) 特殊符号 为了精确表示定时,需要一些特殊符号来描述具体的任务执行时间.有以下几个符号: "/" 代表每,每隔多长时间 &
-
Python学习之Django的管理界面代码示例
本文研究的主要是Python web开发框架Django的管理界面的相关内容,具体如下. admin界面的路径,通常在my_project中已经设置好了,使用django-admin.py startproject my_project 在目录下的urls.py文件中可以看到 from django.conf.urls import include, url from django.contrib import admin urlpatterns = [ # Examples: # url(r'
-
详解在dotnet core实现类似crontab的定时任务
前段需要在业务中实现某些时间段的简单定时任务,类似crontab的调度,因为业务会放在docker中,所以不想用直接用crontab,在网上搜了一下,发现一个开源的实现 Pomelo.AspNetCore.TimedJob,使用简单,但是因为是时间间隔执行,不太符合指定时间段要求,不过感谢有此开源代码,我在其基础上重新撸了个crontab的实现,并增加了一些功能,代码已放在Github上. 源码地址:https://github.com/aquilahkj/Light.Cron 使用Demo:h
-
对django 模型 unique together的示例讲解
unique_together 这个元数据是非常重要的一个!它等同于数据库的联合约束! 举个例子,假设有一张用户表,保存有用户的姓名.出生日期.性别和籍贯等等信息.要求是所有的用户唯一不重复,可现在有好几个叫"张伟"的,如何区别它们呢?(不要和我说主键唯一,这里讨论的不是这个问题) 我们可以设置不能有两个用户在同一个地方同一时刻出生并且都叫"张伟",使用这种联合约束,保证数据库能不能重复添加用户(也不要和我谈小概率问题).在Django的模型中,如何实现这种约束呢?
-
springboot实现多实例crontab抢占定时任务(实例代码)
github: https://github.com/jiasion/eslog wechat:minghui-666 利用redisson实现多实例抢占定时任务 pom.xml <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.12.0</version> </dependency>
随机推荐
- 使用angularjs创建简单表格
- js简单的点击返回顶部效果实现方法
- javascript实现window.print()去除页眉页脚
- 解决js下referer兼容各大浏览器的方法
- JS获取整个页面文档的实现代码
- 什么是CRT管聚焦性能
- 浅谈python中的面向对象和类的基本语法
- 那些年我们错过的魔术方法(Magic Methods)
- PHPCMS忘记后台密码的解决办法
- 用PHP实现XML备份Mysql数据库
- php读取csv实现csv文件下载功能
- Android优质索尼滚动相册
- Android的Launcher启动器中添加快捷方式及小部件实例
- JavaScript中ES6字符串扩展方法
- JS简单实现DIV相对于浏览器固定位置不变的方法
- jquery事件与绑定事件
- jQuery登陆判断简单实现代码
- jQuery通过ajax快速批量提交表单数据
- jQuery DIV弹出效果实现代码
- 深入理解Javascript动态方法调用与参数修改的问题