How nginx define a free worker?

Anton Yuzhaninov citrin at
Wed Nov 21 17:36:09 UTC 2012

On 11/21/12 20:51, Vivek Goel wrote:
> If  I have n cores and I am running n nginx worker process how nginx will decide
> free worker for next connection?
>  1. Will it be doing round robin?
> If it is not using round robin what method it use? Is there a way I can force it
> to use round robin method?
> regards

Load distribution between worker processes affected by accept_mutex

Default is to use accept mutex and if load is low, most request will be handled 
by one worker.

On heavy loaded server load destribution between worker processes will be more 

You can switch off accept_mutex and load will be more uniform even with low 
load, but all worker processes will be waken up on each new connection and only 
one worker can accept given connection:
In case of nginx number of processes is usually low, and negative impact of 
accept_mutex off should be low.

  Anton Yuzhaninov

More information about the nginx mailing list