定时任务模块——APScheduler
一、概念:
python定时任务框架,基于日期,固定时间间隔,crontab类型的任务,并且可以持久化任务,并能以deamon守护方式运行任务
二、简介:
安装:pip install apscheduler
其中7中调度器:
- BackgroundScheduler:如果希望调度器在后台执行使用
- BlockingScheduler:当调度器是应用唯一要运行的任务时使用
- AsyncIOScheduler:使用asyncio模块(一个异步框架)一起使用
- GeventScheduler:使用gevent(高新能的python并发框架)作为IO模型,和GeventExecutor配合使用
- TornadoScheduler:使用Tornado(一个web框架)的IO模型,用ioloop.add_timeout 完成定时唤醒
- TwistedScheduler:

- QtScheduler:如果是一个qt应用,需使用QTimer完成定时唤醒
每种调度器中,都有四个组件
触发器(trigger)触发器包含调度逻辑,描述一个任务何时被触发,触发器内置三种方式。
- date:基础触发器,特定的时间点触发,只执行一次;
- interval:固定时间间隔触发,可以执行多次;

- cron:在特定时间周期性的触发,可以执行多次;每次任务执行的间隔时间可以不一样;

任务/作业存储(job store)指定了作业被存放的位置
1.默认情况下保存在内存
2.也可以保存在数据库中,如MySql/MongoDB
3.调度器之间不能共享作业存储
执行器(executor):执行器是将指定的作业(作业函数)提交到线程池,当任务完成时,执行器通知调度器触发相应的事件。
1.ProcessPoolExecutor(默认10个)
2.ThreadPoolExecutor(默认10个)
调度器(scheduler):


三、原理
触发器(trigger),作业存储(job store),执行器(executor),调度器(scheduler)

四、如何使用

五、实例演示
BlockingScheduler
以阻塞进程的形式,每秒执行一次

定时任务模块——APScheduler的更多相关文章
- python定时任务模块APScheduler
一.简单任务 定义一个函数,然后定义一个scheduler类型,添加一个job,然后执行,就可以了 5秒整倍数,就执行这个函数 # coding:utf-8 from apscheduler.sche ...
- 定时任务框架APScheduler学习详解
APScheduler简介 在平常的工作中几乎有一半的功能模块都需要定时任务来推动,例如项目中有一个定时统计程序,定时爬出网站的URL程序,定时检测钓鱼网站的程序等等,都涉及到了关于定时任务的问题,第 ...
- python 定时任务框架apscheduler
文章目录 安装 基本概念介绍 调度器的工作流程 实例1 -间隔性任务 实例2 - cron 任务 配置调度器 方法一 方法二 方法三: 启动调度器 方法一:使用默认的作业存储器: 方法二:使用数据库作 ...
- Python定时任务利器—Apscheduler
导语 在工作场景遇到了这么一个场景,就是需要定期去执行一个缓存接口,用于同步设备配置.首先想到的就是Linux上的crontab,可以定期,或者间隔一段时间去执行任务.但是如果你想要把这个定时任务作为 ...
- ansible定时任务模块和用户组模块使用
接上篇,还是一些基础模块的使用,这里主要介绍的是系统模块的使用. 下面例子都进行过相关的实践,从而可以直接进行使用相关的命令. 3.用户模块的使用 用户模块主要用来管理用户账号和用户的属性(对远程主机 ...
- Go 的定时任务模块 Cron 使用
前言 新项目是Golang作为开发语言, 遇到了些新的坑, 也学到了新的知识, 收获颇丰 本章介绍在Go中使用Cron定时任务模块来实现逻辑 正文 在项目中, 我们往往需要定时执行一些逻辑, 举个例子 ...
- 分布式定时任务框架——python定时任务框架APScheduler扩展
http://bbs.7boo.org/forum.php?mod=viewthread&tid=14546 如果将定时任务部署在一台服务器上,那么这个定时任务就是整个系统的单点,这台服务器出 ...
- Python定时任务框架APScheduler
http://blog.csdn.net/chosen0ne/article/details/7842421 APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz ...
- Python中定时任务框架APScheduler
前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍APScheduler的基本使用方法. 一.APScheduler介绍 APSc ...
随机推荐
- Redux counterpart rematch dva
rematch https://github.com/rematch/rematch#examples 数据模型一个文件定义, 不用分散到 action actiontype reducer 文件 e ...
- 转 mysql distinct函数 与 免密码登录 与 查看表的结构
#########sample 1 mysql中去重 distinct 用法 在使用MySQL时,有时需要查询出某个字段不重复的记录,这时可以使用mysql提供的distinct这个关键字来过滤重 ...
- GhostVLAD for set-based face recognition
GhostVLAD for set-based face recognition 中提到了文章解决的是template-based face recognition. VLAD: vector of ...
- kubernetes-通过VMware搭建k8s集群遇到的问题
VMWare版本:14.13 Centos版本:CentOS-7-x86_64-DVD-1810.iso 遇到的问题:ping不通 报could not resolve host这个错误 解决办法:参 ...
- log4net记录多个级别文件
https://www.cnblogs.com/AprilBlank/p/12047757.html
- LODOP打印URL显示和隐藏进度条
不建议使用ADD_PRINT_URL:由于Lodop借用IE下载引擎,与非IE浏览器之间目前不能传递Session(Cookies),所以需要安全验证的页面不要用URL方式打印,要用页面已经下载好的内 ...
- 解决net core mvc 中文乱码问题
在Startup 配置文件下的ConfigureServices方法中添加: services.AddSingleton(HtmlEncoder.Create(UnicodeRanges.All ...
- 安卓 App 性能专项测试之流畅度深度解析-上篇
指标背景 流畅度,顾名思义是用户感知使用App页面时的流畅情况,"App卡不卡",这是用户最直接的感受. 但是要用量化之后的数据衡量流畅度,在Android平台这边并没有直接有效的 ...
- SPFA + 链式前向星(详解)
求最短路是图论中最基础的算法,最短路算法挺多,本文介绍SPFA算法. 关于其他最短路算法,请看我另一篇博客最短路算法详解 链式前向星概念 简单的说,就是存储图的一个数据结构.它是按照边来存图,而邻接矩 ...
- MySQL多表查询,Navicat使用,pymysql模块,sql注入问题
一.多表查询 #建表 create table dep( id int, name varchar(20) ); create table emp( id int primary key auto_i ...