5 воркеров vs 1

Igor Sysoev is at rambler-co.ru
Tue May 24 11:37:26 MSD 2005


On Tue, 24 May 2005, Михаил Монашёв wrote:

> FreeBSD 5.2.1-RELEASE-p14
>
> Оказалось, что один рабочий процесс жрёт больше проца, чем 5:
>
>> ps ax -o user,pid,ppid,%cpu,%mem,vsz,rss,start,time,command | egrep '(nginx|PID)'
> USER         PID  PPID %CPU %MEM   VSZ  RSS STARTED      TIME COMMAND
> root       30210     1  0,0  0,3 12616 11812 10:50     0:00,75 nginx: master process /usr/local/nginx/sbin/nginx
> nobody     30689 30210  2,9  0,3 12616 11836 11:06     0:25,27 nginx: worker process (nginx)
>
>> ps ax -o user,pid,ppid,%cpu,%mem,vsz,rss,start,time,command | egrep '(nginx|PID)'
> USER         PID  PPID %CPU %MEM   VSZ  RSS STARTED      TIME COMMAND
> root       30210     1  0,0  0,3 11208 10736 10:50     0:01,05 nginx: master process /usr/local/nginx/sbin/nginx
> nobody     30689 30210  0,0  0,3 12616 11836 11:06     0:27,49 nginx: worker process is shutting down (nginx)
> nobody     31002 30210  0,3  0,3 11208 10760 11:18     0:01,18 nginx: worker process (nginx)
> nobody     31003 30210  0,0  0,3 11208 10756 11:18     0:00,05 nginx: worker process (nginx)
> nobody     31004 30210  0,0  0,3 11208 10756 11:18     0:00,25 nginx: worker process (nginx)
> nobody     31005 30210  0,9  0,3 11208 10760 11:18     0:01,28 nginx: worker process (nginx)
> nobody     31006 30210  0,0  0,3 11208 10760 11:18     0:00,91 nginx: worker process (nginx)
>
> С чем это связано?
>
> Пробовал увеличивать размер и количество буферов при проксировании, чтобы у
> одного воркера было столько же доступной памяти.
> было:
> proxy_buffers                   4 32k;
> поменял на
> proxy_buffers                   64 256k;
>
> всё равно %CPU около 3% был.

Я думаю, что это погрешности сбора статистики. Вот пример, FreeBSD 4.10:

last pid: 90821;  load averages:  1.31,  0.95,  0.84   up 95+15:59:51  11:31:29
57 processes:  3 running, 54 sleeping
CPU states: 32.4% user,  0.0% nice, 12.9% system,  0.8% interrupt, 53.9% idle
Mem: 64M Active, 556M Inact, 324M Wired, 50M Cache, 111M Buf, 3760K Free
Swap: 2096M Total, 164K Used, 2096M Free

   PID USERNAME PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU COMMAND
87187 nobody    32   0  7876K  7376K RUN    433:19 10.16% 10.16% nginx
65107 www        2   0 11396K  9616K accept   2:29  0.24%  0.24% httpd
65086 www        2   0 11428K  9648K accept   2:30  0.20%  0.20% httpd
65104 www        2   0 11396K  9636K accept   2:30  0.20%  0.20% httpd
65097 www        2   0 11360K  9612K accept   2:29  0.20%  0.20% httpd
65101 www        2   0 11360K  9596K accept   2:32  0.15%  0.15% httpd
65091 www        2   0 11336K  9568K accept   2:29  0.15%  0.15% httpd

nginx ест 10%, httpd в сумме дают что-то около 2%. Вопрос - кто ест
оставшиеся 32 - 12 = 20% user time ?


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list