使用flask_apscheduler
采用crontab的方式
1 | # 定时任务 |
其他方式
添加一个定时任务,时间间隔为60s,start_date为当前时间后的45s,end_date为当前时间后的645s,args中传递的为参数,query_instance_info是定时要调用的方法
1 | scheduler.add_job(query_instance_info, interval=60, id=processinst_id, |
遇见的一些问题
在使用docker发布项目的过程中,docker中的时间和时区均为错误的值,但是某次发布将时间改为了正确的指,但是时区却是错的,这会导致任务的执行时间出现问题。scheduler默认底层取的是/etc/timezone下的时区,如果没有再去找/etc/localtime
参考文档
https://github.com/viniciuschiele/flask-apscheduler/tree/master/examples
https://apscheduler.readthedocs.io/en/latest/modules/triggers/cron.html