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

Alexey Bestchiokov proforg at maloletka.ru
Mon Oct 17 18:09:57 MSD 2005


Igor Sysoev wrote:
> On Mon, 17 Oct 2005, Alexey Bestchiokov wrote:
> 
>> GribUser wrote:
>>
>>>    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 обгоняет по загрузке.
>>
>>
>> Похожую картину наблюдал у себя когда nginx отдавал с бакенда 80 
>> меговые файлу в несколько сотен потоков - как я понял из за 
>> постоянного чтения / записи проксированного контента во временные 
>> файлы. Решилось прямой отдачей таки файлов nginx'ом.
> 
> 
> А как в такой ситуации ведёт себя squid ? Что он делает с огромными
> некэшируемым ответами ?

Кеширует на диск - но не новую копию на каждый запрос а одну.
по поводу сравнения производительности - нашел свои старые тесты

1) статический файл, размер 4 кб, ab -c 1000 -n 100000
Concurrency выше не поднимаю, так иначе у squid начинаются проблемы,
а настраивать его дополнительно я не готов.

squid + apache:
       Time taken for tests:   416.201712 seconds
       загрузка процессора при этом ~90% - squid, остальное ab
nginx:
       Time taken for tests:   40.546765 seconds
       процессор при этом деле делится ~ 50 на 50 между ним и nginx

2) динамический контент, размер ~60 кб, ab -c 100 -n 1000
Concurrency 100, так как иначе apache начинает свопится и отжирать
слишком много ресурсов.
squid + apache:
       Time taken for tests:   26.724761 seconds
       загрузка процессора ~35% squid

nginx + apache:
       Time taken for tests:   18.190494 seconds
       загрузка процессора ~7% squid

Алексей Бещёков


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






More information about the nginx-ru mailing list