17 August 2025
18 August 2025
Zhijiang Lan我想能不能丢一个任务到Redis List中,然后通过 asyncio.run_forever 并发启动FastAPI 和 RedisListListener。
RedisListListener拿到任务后检查是否到了运行的时间,如果没有那就 asyncio.sleep 直到可以运行,运行完毕之后又按照任务配置创建下一个定时任务。
主要是你的fastapi是单进场?还是多进程?你这样启动管理进程状态不会很复杂吗。定时任务还是怎样的任务队列还是单独worker进程比较好。然后怎么协调通信的问题有很多方案,不一定需要很重的celery。
Ella🅥 wxyz主要是你的fastapi是单进场?还是多进程?你这样启动管理进程状态不会很复杂吗。定时任务还是怎样的任务队列还是单独worker进程比较好。然后怎么协调通信的问题有很多方案,不一定需要很重的celery。
单进程了,多进程那也没必要 asyncio.run_forever 并发了,直接各开各的就行
Ella🅥 wxyz主要是你的fastapi是单进场?还是多进程?你这样启动管理进程状态不会很复杂吗。定时任务还是怎样的任务队列还是单独worker进程比较好。然后怎么协调通信的问题有很多方案,不一定需要很重的celery。
用celery倒不是为了协调通信,不过我确实应该了解一下还有没有更轻量的方案
19 August 2025