ПРОЕКТЫ 


  АРХИВ 


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: nginx лучше сквида?



On Mon, 17 Oct 2005, GribUser wrote:

Библиотека раньше работала на squid и squid я наверху в top видел только
при сортировке по памяти - он память терял, зараза такая. За что и был
удален с поля. Nginx же уверенно держится вверху по процессору,
временами обгоняя даже MySQL единичными (!) чайлдами:
  PID USERNAME LWP PRI NICE  SIZE   RES STATE    TIME    CPU COMMAND
28740 nobody     1  10    0   10M 9980K cpu/1    1:08 15.40% nginx
  388 mysql     17  59    0  749M  670M sleep  598:21 12.97% mysqld

Как сие может быть - мне вообще непонятно, по идее прием от бэкенда и
выдача клиенту должны вообще ничего от процессора не требовать и уж
всяко бэкенд со своими libxml/libxslt должен жрать процессор на порядок
больше, чем фронтэнд. А у меня nginx только MySQL обгоняет по загрузке.

А как выглядит распределение user/system/idle, когда nginx подымается
выше всех в top'е и ест, скажем, 15% ?

Я на домашней тачке под FreeBSD запустил nginx с одним воркером и
с параметрами

      proxy_header_buffer_size    32k;
      proxy_buffers               2000 32k;
      proxy_busy_buffers_size     64k;

nginx проксирует на Апач. Затем я запустил ab -n 500 -c 20 http://127.0.0.1:8001/5M_file

Получилось так:

CPU states: 14.4% user,  0.0% nice, 85.6% system,  0.0% interrupt,  0.0% idle
Mem: 105M Active, 104M Inact, 30M Wired, 9956K Cache, 35M Buf, 700K Free
Swap: 1024M Total, 1024M Free

  PID USERNAME PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU COMMAND
 9266 is        53   0  4252K  3556K RUN      0:33 59.65% 56.54% nginx
 9267 is         2   0  1212K   788K select   0:08 14.13% 13.09% ab
 9255 is         2   0  1712K  1244K sbwait   0:06  1.22%  1.22% httpd
 9258 is         2   0  1712K  1244K sbwait   0:05  1.12%  1.12% httpd
 9240 is         2   0  1708K  1244K sbwait   0:05  1.12%  1.12% httpd
 9237 is         2   0  1708K  1244K sbwait   0:06  1.07%  1.07% httpd
 9239 is         2   0  1708K  1244K sbwait   0:06  1.07%  1.07% httpd
 9259 is         2   0  1712K  1244K sbwait   0:05  1.07%  1.07% httpd
 9257 is         2   0  1712K  1244K sbwait   0:05  1.03%  1.03% httpd
 9256 is         2   0  1712K  1244K sbwait   0:05  1.03%  1.03% httpd
 9236 is         2   0  1708K  1244K sbwait   0:06  0.98%  0.98% httpd
 9238 is         2   0  1708K  1244K sbwait   0:06  0.93%  0.93% httpd

user/system time - 15%/85%.

Затем я попробовал прогнать тоже самое через старый squid - 2.4_10:
ab -n 500 -c 20 -X localhost:3128 http://127.0.0.1:9000/5M_file

CPU states: 30.2% user,  0.0% nice, 69.8% system,  0.0% interrupt,  0.0% idle
Mem: 109M Active, 93M Inact, 33M Wired, 14M Cache, 35M Buf, 676K Free
Swap: 1024M Total, 1024M Free

  PID USERNAME PRI NICE  SIZE    RES STATE    TIME   WCPU    CPU COMMAND
  190 nobody    55   0  8144K  7356K RUN      0:44 62.45% 62.45% squid
 9317 is         2   0  1212K   768K select   0:07 14.59% 13.13% ab
 9238 is         2   0  1708K  1244K sbwait   0:09  0.54%  0.54% httpd
 9240 is         2   0  1708K  1244K sbwait   0:08  0.44%  0.44% httpd
 9255 is         2   0  1712K  1244K sbwait   0:08  0.29%  0.29% httpd
 9236 is         2   0  1708K  1244K sbwait   0:09  0.24%  0.24% httpd
 9259 is         2   0  1712K  1244K sbwait   0:08  0.24%  0.24% httpd
 9257 is         2   0  1712K  1244K sbwait   0:08  0.10%  0.10% httpd
 9239 is         2   0  1708K  1244K sbwait   0:09  0.05%  0.05% httpd
 9256 is         2   0  1712K  1244K sbwait   0:08  0.05%  0.05% httpd

user/system time получился 30%/70% и это при том, что одновременных
запросов всего 20, то есть, и select и poll должны работать быстро.


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




 




Copyright © Lexa Software, 1996-2009.