【发布时间】:2023-03-26 18:13:02
【问题描述】:
我正在开发一个项目,将部署在 Django 中的 Heroku 上,该项目有大约 12 个更新功能。每次运行大约需要 15 分钟。我们称它们为 update1()、update2()...update10()。
我正在 Heroku 上部署一个工作人员测功机,我想一次运行 n 个或更多这些(它们不是真正的计算密集型,它们都是 HTML 解析器,但数据是时间敏感的,所以我希望他们尽可能多地被调用)。
我已经阅读了很多 Celery 和 APScheduler 文档,但我不确定哪个对我来说最好/最简单。如果时间相互重叠,计划任务是否会同时运行(即,如果我每 2 分钟运行一个,每 3 分钟运行另一个,还是等到每个任务完成?)
有什么方法可以让这些函数排队,至少有几个函数同时运行?此用例的建议同时调用数是多少?
【问题讨论】:
标签: python django heroku celery