早期我们使用 crontab
来执行定时任务, 后续考虑到定时任务变多, 并且服务也逐渐拆成了微服务, 上百个服务,其中有很多服务依赖定时任务(关于架构这块存在的问题,不做讨论
), 后基于 apscheduler
实现了一套 api , 还套了个单页应用,以供开发使用。
随着任务变多, 很多秒级任务执行, apscheduler
较不稳定。
值得一提的是, 在 jobstore 这块查询多了也偶有问题。
from apscheduler.executors.pool import ProcessPoolExecutor
from apscheduler.jobstores.sqlalchemy import SQLAlchemyJobStore
from apscheduler.schedulers.background import BackgroundScheduler
早期使用时有稍微走读下源码, 实际上对 apscheduler
的使用也不能算非常熟悉。 算是勉强造了个轮子吧。
想通过本帖知道各位同学是怎么管理定时任务的, 我在设计时是支持了几种方法, 如下:
然后支持一个 echo 的回调, 整体来讲, 比较简单,如果说有重使用这个的 也希望取个经, 看是否能解惑。
另外一个就是想知道有没有其他解决方案, 我看历史贴里面对这个的讨论比较少, 所以在此发一贴。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.