解决fastapi 中 APScheduler 与 uvicorn 冲突问题(qbit)

2年前 (2023) 程序员胖胖胖虎阿
151 0 0

问题描述

  • 环境

    Ubuntu 20.04
    Python 3.8.5
    APScheduler 3.8.x/3.9.x
    uvicorn 0.15.0 - 0.17.6
  • 在上述环境下,APScheduler 的定时任务不能运行
  • uvicorn 0.14.0APScheduler 搭配无此问题
  • WindowsuvicornAPScheduler 任意版本搭配也无此问题

解决办法

  • appstartup 事件中启动定时器即可

    @app.on_event("startup")
    async def start_scheduler():
      AsyncSched = AsyncIOScheduler(timezone="Asia/Shanghai")
      scheduler.add_job(...)
      scheduler.start()
  • 参考 uvicorn can't reload when i use apscheduler and fastapi together

本文出自 qbit snap

相关文章

暂无评论

暂无评论...