ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: балансировка конне кций между воркерами



Hello!

On Mon, Nov 24, 2008 at 10:23:16PM +0300, Anton Yuzhaninov wrote:

> А как балансируются приходящие коннекции между несколькими воркерами?

[...]

> Т. е. все 50k коннекций на одном воркере, а второй отдыхает.
>
> Из особенностей конфига - наличие директивы  limit_rate
>
> Если убрать  limit_rate то начинают работать оба воркера.

По умолчанию nginx работает с использованием accept_mutex'а, и при 
малой нагрузке большая часть работы будет на одном worker'е.

Если хочется лучшей балансировки соединений между рабочими 
процессами - можно попробовать выключить accept_mutex:

events {
    accept_mutex  off;
    ...
}

Однако в результате использование CPU несколько вырастет, т.к. для 
принятия соединения будут пробуждаться все рабочие процессы, при 
том что accept() сможет сделать только один из них.

Maxim Dounin



 




Copyright © Lexa Software, 1996-2009.