芹菜中的工人与工人过程之间是什么关系?在单个计算机上运行多个工作程序是否有意义? 这是系统配置
8核和32GB RAM。
我尝试过的芹菜配置如下
celery -A Comments_DB worker --loglevel=INFO --concurrency=8
我想增加在给定时间范围内处理的请求数。哪种方法更好?
a。 2个并发设置为8(2 * 8 = 16)或
b。 1个并发设置为16 * 1 * 16 = 16)的工作程序?
有人可以澄清吗?
答案 0 :(得分:0)
一个工作程序(父进程)将具有一个或多个工作程序进程(子进程)。这样,如果任何子进程由于错误或最大任务限制而死亡,则父进程可以启动另一个子进程。
并发性为16的父进程通常比并发性为8的两个进程具有更好的性能。这是因为一个进程比两个进程具有更少的进程开销。如果您有多个队列,并且想要确保较慢的队列不会阻止其他重要的队列任务进行处理,则可能需要两个进程。