RE: nginx лучше сквида?

Igor Sysoev is at rambler-co.ru
Tue Oct 18 00:17:29 MSD 2005


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





More information about the nginx-ru mailing list