如何 pause/resume celery worker 在不将 worker_enable_remote_control 设置为 True 的情况下使用新任务

How to pause/resume celery worker from consuming new tasks without setting worker_enable_remote_control as True

我们使用 SQS 作为我们的消息代理,并将 worker_enable_remote_control 设置为 False 因为它会在 SQS 中创建很多 *pidbox 队列,而 aws sqs 列表限制为 1000 所以我们禁用标志 worker_enable_remote_control.

但是,我们仍然希望能够从 worker 主机控制 celery worker。有control.cancel_consumercontrol.add_consumer,但它们都依赖于worker_enable_remote_control

是否可以从运行 celery worker 的主机向 cancel/add 消费者发送 celery master worker 进程的信号?

celery version: 4.3.0 kombu (4.6.3)

谢谢。

最后,我遵循了这个:https://beageek.io/linux/sigcont-and-sigstop/ 并使用了 sigstop 和 sigcont