如何阻止芹菜的工人?

时间:2018-07-25 22:59:41

标签: celery

我正在Django项目中使用Celery进行定期任务。我非常难以理解Celery的工作原理,现在它开始显示出一些东西,但是我不知道如何阻止工人。

我首先运行此命令以启动Celery beat。

celery -A proj beat

然后运行此命令以启动工作程序

celery -A proj worker -B

无论我做什么,以前的工作人员仍在工作。即使我更新了代码并使用Ctrl+c停止了工作程序,它们仍在运行。我该如何阻止所有这些人?

[2018-07-25 15:53:49,694: WARNING/ForkPoolWorker-2] Yo
[2018-07-25 15:53:50,224: WARNING/ForkPoolWorker-3] hello
[2018-07-25 15:53:52,694: WARNING/ForkPoolWorker-2] Yo
[2018-07-25 15:53:55,694: WARNING/ForkPoolWorker-3] Yo
[2018-07-25 15:53:58,694: WARNING/ForkPoolWorker-2] Yo
[2018-07-25 15:54:00,227: WARNING/ForkPoolWorker-3] world
[2018-07-25 15:54:00,229: WARNING/ForkPoolWorker-2] hello

1 个答案:

答案 0 :(得分:1)

关闭应使用TERM信号完成。

方法1:

$ pkill -9 -f 'celery worker'

方法2:

$ ps auxww | grep 'celery worker' | awk '{print $2}' | xargs kill -9

正式文件:here