使用芹菜和不使用multi有什么区别

问题描述 投票:0回答:1

我注意到有两种不同的方式来运行芹菜工人。您可以使用或不使用

multi
命令后缀来启动工作程序:

celery multi start worker -A main.celery --concurrency=10

celery -A main.celery worker --concurrency=10

两者之间有区别吗?是否建议在生产中使用其中一种而不是另一种?

celery celeryd flask-celery
1个回答
0
投票

celery multi 更像是一个 CLI,用于管理一个或多个工作进程,并且主要用于交互式使用。在您的示例中,如果您使用

启动您的工作人员

celery multi start worker -A main.celery --concurrency=10

它实际上将你的工作进程作为守护进程启动。一旦启动并运行,

celery multi
就会提供一系列与您的工作人员交互的命令,例如将其关闭。

“标准”

celery worker
命令在主线程中启动工作程序:

celery -A main.celery worker --concurrency=10

在生产环境中,我会使用标准(而不是多重)命令。这将实际运行工作程序的关注点与如何/在何处运行工作程序分开,例如 Docker 或 Procfile。

© www.soinside.com 2019 - 2024. All rights reserved.