ПРОЕКТЫ 


  АРХИВ 


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 Tue, 18 Oct 2005, Igor Sysoev wrote:

Я, кажется, понял, почему squid не ест процессор при проксировании
больших файлов. Я потестировал, сразу оговорюсь, старую версию squid'а -
2.4.STABLE7, и, surprise-surprise, не увидел акселерации больших
ответов. Похоже, акселератор из squid'а - немногим лучше, чем из mod_proxy.

Я не нашёл програмки, которая бы читала ответ с задержками, поэтому
собрал схему с nginx'ом, который ограничивает скорость забирания ответа
у squid'а:

 ab -> nginx -> squid -> apache.

nginx проксирует запросы на squid, не использует временные файлы,
может считать у squid'а не больше 6K и ограничивает скорость отдачи в 1K:

           limit_rate                 1k;
           proxy_pass                 http://127.0.0.1:3128/;
           proxy_header_buffer_size   2k;
           proxy_buffers              2 2k;
           proxy_busy_buffers_size    2k;
           proxy_max_temp_file_size   0;

squid настроен так:

           httpd_accel_host           127.0.0.1
           httpd_accel_port           9000
           httpd_accel_single_host    on

Ответ в 250K Апач отдал squid'у мгновенно, а вот 300K отдавал 41 секунду.

То есть, затык наступает где-то в районе 260К, после чего Апач отдаёт
данные со скоростью клиента (1K/s). И, кстати, 160K из этих 260K - это
ядерные буфера:

sysctl -a|grep 'tcp.*space'
net.inet.tcp.sendspace: 32768
net.inet.tcp.recvspace: 49152

А буфер самого squid'а, очевидно, около 100K. Вот такая акселерация.


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




 




Copyright © Lexa Software, 1996-2009.