【发布时间】:2020-12-20 02:46:07
【问题描述】:
我有 1 个 celery broker 和几个 celery worker,都与 rabbitMQ 通信。在我的设置中,我向我的 celery worker 发送了几个任务,他们将处理所有任务(大约需要 1 小时),然后我将手动终止我的 celery worker。
我想转向一个系统,如果芹菜工人 id 为“空闲”(我定义为:在 timeout_seconds 的时间段内有 0 个活动任务,我将预先定义),工人将被终止以编程方式。所有工作人员将有大约相同数量的任务要运行,并且都会在同一时间“空闲”。
我设置了可以终止工作人员的代码,但我不确定如何检测工作人员处于“空闲”状态并准备好终止工作。我想我想使用signal,但看起来没有一个符合我的要求
【问题讨论】:
标签: celery