说明
python搞定时任务一般用apscheduler, 如果是和flask结合,还有flask_scheduler。
内容
1 为什么要搞两套
原来想的比较理想化,觉得使用flask_scheduler做一个接口控制的动态任务系统就够了,但是在实际使用中,发现有些东西还是要本地控制的。
做一下对比,本地的定时任务优势:
- 1 更简单,只需要一个py文件就可以
- 2 更灵活,本地可以直接起定时、一次性延时以及cron格式(flask为了管理的方便,只用cron)
- 3 不占用端口资源。(也就意味着不用去分配和配置防火墙)
使用flask的优势:
- 1 web可访问+控制。
- 2 动态和灵活。可以通过接口进行启停、查询等的操作 。
总结一下,如果定时任务有比较具体的大量应用,或者算网在协同工作的时候,需要通过api互联的时候,可以使用flask的方式。
2 怎么搞
- 1 可以起一个git项目,下面全部是定时任务,这样可以很方便同步任务。
- 2 给常用的镜像加上apscheduler包,之后基本只使用一个镜像为常用任务启动容器。
- 3 平时可以在jupyter里先测试,好了以后直接迁移就好了。