Apscheduler 介绍
核心组件: 调度器、作业存储、执行器、触发器
调度器
BlockingScheduler
阻塞的调度器,适用于脚本
BackgroundScheduler
后台调度器,适用于非阻塞的应用如Web应用
AsyncIOScheduler
适用于 asyncio 的调度器
GeventScheduler
适用于 Gevent 的调度器
TornadoScheduler
适用于 Tornado 的调度器
TwistedScheduler
适用于 Twisted 的调度器。
作业存储
保存作业的地方,默认是使用 内存存储,也可以持久化到数据库,支持redis、mongdb等
执行器
执行作业的工具,默认是ThreadPoolExecutor和ProcessPoolExecutor,也就是线程池和进程池
触发器
确定何时运行作业,主要有三种:date、interval、cron
date
在特定时间点运行一次,也就只运行一次
interval
按指定间隔运行,例如每五秒运行
cron
可支持复杂的规格,例如每天某个时间点执行,每周一执行等