从一条线上处决两名芹菜工人
Executing two celery workers from one line
我在一个团队中为我的大学做一个项目,我主要在前端和一些基本的 django 模型上工作,所以我不太熟悉 eloquent django-celery,我也没有设置它。起初我们使用了一个 celery worker,但我不得不再添加一个,这样我才能完成一个用户故事。
我目前 运行 两个工人在一个终端,每个工人一个,如下所示:
exec celery -A my_proj --concurrency=1 worker
exec celery -A my_proj --concurrency=1 worker -B -Q notification
虽然我 运行 这两个我的项目有效,但我需要这些从一行开始。所以:
如何让这两个脚本成为一行?
到目前为止,我已尝试解决此问题:
exec celery multi start celery -A my_proj --concurrency=1 notification -A my_proj --concurrency=1 -B -Q notification
但它使我的项目无法运行。
感谢任何帮助,谢谢!
尝试
exec celery -A my_proj --concurrency=1 worker && exec celery -A my_proj --concurrency=1 worker -B -Q notification
解决方案
celery multi start 2 -A my_proj -c=1 -B:2 -Q:2 notification
上面告诉启动 2 个 worker 和第 2 个 worker 来处理 notification
队列并将 celery beat 嵌入其中
说明
您可以运行以下内容来查看由此产生的命令
celery multi show 2 -A my_proj -c=1 -B:2 -Q:2 notification
输出:
celery worker -A my_proj -c=1
celery worker -A my_proj -c=1 -B -Q notification
我在一个团队中为我的大学做一个项目,我主要在前端和一些基本的 django 模型上工作,所以我不太熟悉 eloquent django-celery,我也没有设置它。起初我们使用了一个 celery worker,但我不得不再添加一个,这样我才能完成一个用户故事。
我目前 运行 两个工人在一个终端,每个工人一个,如下所示:
exec celery -A my_proj --concurrency=1 worker
exec celery -A my_proj --concurrency=1 worker -B -Q notification
虽然我 运行 这两个我的项目有效,但我需要这些从一行开始。所以: 如何让这两个脚本成为一行?
到目前为止,我已尝试解决此问题:
exec celery multi start celery -A my_proj --concurrency=1 notification -A my_proj --concurrency=1 -B -Q notification
但它使我的项目无法运行。
感谢任何帮助,谢谢!
尝试
exec celery -A my_proj --concurrency=1 worker && exec celery -A my_proj --concurrency=1 worker -B -Q notification
解决方案
celery multi start 2 -A my_proj -c=1 -B:2 -Q:2 notification
上面告诉启动 2 个 worker 和第 2 个 worker 来处理 notification
队列并将 celery beat 嵌入其中
说明
您可以运行以下内容来查看由此产生的命令
celery multi show 2 -A my_proj -c=1 -B:2 -Q:2 notification
输出:
celery worker -A my_proj -c=1
celery worker -A my_proj -c=1 -B -Q notification