APScheduler (重点)
定时校正 需求: mysql和redis两个系统, mysql增加数据成功, redis未必添加成功, 这样两个系统的数据可能出现偏差, 所以需要定期对mysql和redis的数据进行同步 解决方案: 每天执行一次定时任务, 让mysql数据和redis数据进行同步 crontab 是linux系统一个内置命令, 依赖于linux系统, 无动态管理任务(取消/暂停/修改任务配置) 使用场景: 适合于普通的静态任务 apscheduler 独立的定时器程序, 可以方便的管理定时任务 使用场景: 需要动态生成/管理任务, 如下单后30分钟可有效期 安装 pip install apscheduler 支持三种触发器 date 只执行一次 interval 周期执行 参数 时间间隔 cron 周期执行 参数 时间 调度器 Scheduler 负责管理定时任务 BlockingScheduler: 作为独立进程时使用 from apscheduler.schedulers.blocking import BlockingScheduler scheduler = BlockingScheduler() scheduler.start() # 此处程序会发生阻塞 BackgroundScheduler: 在框架程序(如Django、Flask)中使用 from apscheduler