如何限制在芹菜中运行的任务数



我有一个在 Heroku 上运行的应用程序,我正在使用芹菜和工人测功机来处理后台工作。

我正在运行使用大量内存的任务。这些任务大致在同一时间启动,但我只希望同时运行一个或两个任务,其他任务必须在队列中等待。我怎样才能做到这一点?

如果它们同时运行,我的内存不足,系统重新启动。我知道为什么它使用大量内存而不是希望减少它

很简单:将并发性(芹菜工作进程数(限制为可以在此服务器上安全并行运行的任务数。

请注意,如果您有不同的任务具有截然不同的资源需求(即一个任务消耗大量内存并且需要几分钟才能完成,而几个任务速度很快且根本不需要太多资源(,您可能最好使用两个不同的节点来为它们提供服务(一个用于繁重的任务,另一个用于轻任务(,这样繁重的任务就不会阻塞轻任务。您可以使用队列将任务路由到不同的 celery 节点。

相关内容

  • 没有找到相关文章

最新更新