我正试图在Django项目中使用Celery来完成定期任务。我很难理解芹菜是如何工作的,现在它开始展示一些东西,但我不知道如何阻止工人。
在拳头,我运行这个命令开始打芹菜。
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
应使用TERM信号完成关闭。
方法1:
$ pkill -9 -f 'celery worker'
方法2:
$ ps auxww | grep 'celery worker' | awk '{print $2}' | xargs kill -9
官方文件:此处