2015-02-09 98 views
2

other stackoverflow answer的数量,我试图工人芹菜:CELERYD_CONCURRENCY和工人

限制芹菜的号码我终止了所有的芹菜工人后,我重新启动芹菜新的配置。

CELERYD_CONCURRENCY = 1(在Django的 settings.py

然后我输入下面的命令来检查有多少芹菜工人正在工作。

ps auxww | grep 'celery worker' | grep -v grep | awk '{print $2}'

它返回两个PID像24803,24817.

然后,我改变配置CELERYD_CONCURRENCY = 2并重新启动芹菜。

相同的命令返回3的PID像24944,24958,24959.(正如你所看到的,最后两个PID是连续

这意味着,如我所料职工人数的增加。

但是,我不知道为什么它返回两个PID,即使只有一个芹菜工作正在工作?

有没有什么东西附属程序帮助工人?

回答

6

我相信一个进程总是像控制器一样监听任务,然后将它们分发给它的子进程以实际执行工作。因此,您将始终拥有比配置设置多1个进程。

+0

我这么认为。但我需要参考资料而不是“想法”,而不是文档。你在服务器上检查过了吗? – 2015-02-10 01:18:11

+1

以下是Ask Solem(芹菜首席开发人员)官方论坛的主题: https://groups.google.com/d/msg/celery-users/eq3L5vxy_t4/KAkuXUqU9BcJ – 2015-02-10 02:18:37

+0

A-ha !它似乎是'芹菜拍',它执行一些周期性的任务,正在使用芹菜工 – 2015-02-10 04:08:48