APScheduler定时任务框架的使用
前言 APScheduler基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便。提供了基于日期、固定时间间隔以及crontab类型的任务,不仅可以添加、删除定时任务,还可以将任务存储到数据库中、实现任务的持久化。基于这些功能,我们可以很方便的实现一个python定时任务系统。 安装 1、利用pip进行安装 pip install apscheduler 2、 APScheduler 有四种组成部分: triggers(触发器): 触发器包含调度逻辑,每一个作业有它自己的触发器,用于决定接下来哪一个作业会运行,除了他们自己初始化配置外,触发器完全是无状态的。 job stores(作业存储): 用来存储被调度的作业,默认的作业存储器是简单地把作业任务保存在内存中,其它作业存储器可以将任务作业保存到各种数据库中,支持MongoDB、Redis、SQLAlchemy存储方式。当对作业任务进行持久化存储的时候,作业的数据将被序列化,重新读取作业时在反序列化。 executors(执行器): 执行器用来执行定时任务,只是将需要执行的任务放在新的线程或者线程池中运行。当作业任务完成时,执行器将会通知调度器。对于执行器,默认情况下选择ThreadPoolExecutor就可以了