ПРОЕКТЫ 


  АРХИВ 


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: 5 воркеров vs 1



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




 




Copyright © Lexa Software, 1996-2009.