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