关闭芹菜工人

时间:2015-01-12 13:15:15

标签: python celery

例如:

@app.task()
def f(num):
    if num == 0:
        # shutdown this worker
        # celery will not distribute any tasks to this worker
    else:
        return num

芹菜 - 任务工作者--loglevel = info -n worker1

当芹菜将0分配给worker1时,worker1将被杀死。 在文档The broadcast() function

>>> broadcast("shutdown") # shutdown all workers
>>> broadcast("shutdown, destination="worker1.example.com")

但这是错误的,我将其更改为

>>> broadcast("shutdown", destination=["worker1"])

它也不起作用。

那么,如何实现这个功能呢?

1 个答案:

答案 0 :(得分:0)

通常,工作人员姓名以' celery @ '开头。所以在你的情况下尝试下面的代码: celery.control.broadcast('shutdown', destination=['celery@worker1'])

相关问题