为什么使用APSchedule
当我们设计程序,然后需要每天日常运行的时候,第一个简单的尝试往往是windows task scheduler, 非常易用,将python运行地址和运行的程序地址写入,选择时间后就可以快速运行,还可以控制计算机自动开机关机,实现简单的BI或是工作自动化。 但是当我们需要精密检测程序的错误后,这个windows task scheduler的log模块还是远远达不到要求,需要寻找第三方新的包。看了很多的基于python的任务调度的框架后, 对比下来, 这个apscheduler 包还是基本能代替windows task scheduler,再加上这个包内部和python的logging模块非常的契合,所以也可以进行高精密度的任务检测。
使用笔记
在关闭 APSchedule的任务调度时,需要加入shutdown task来完成最后的关闭
组件 scheduler的选择
BackgroundScheduler; add_job后会变成一个独立的线程,在同一个python file里面继续编写的程序会变成另外一个线程去运行。或者我们希望scheduler在后台运行
BlockingScheduler,当整个进程中只有这一个程序需要我们运行的时候可以使用。
Job store:
MemoryJobStore: 如果我们需要程序每次重新建立,那就是这个默认的储存方法,
网友评论