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

Igor Sysoev is at rambler-co.ru
Tue Oct 18 22:37:25 MSD 2005


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





More information about the nginx-ru mailing list