如何 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_consumer
和control.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
我们使用 SQS 作为我们的消息代理,并将 worker_enable_remote_control
设置为 False
因为它会在 SQS 中创建很多 *pidbox
队列,而 aws sqs 列表限制为 1000
所以我们禁用标志 worker_enable_remote_control
.
但是,我们仍然希望能够从 worker 主机控制 celery worker。有control.cancel_consumer
和control.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