А какой net.inet.tcp.delacktime?<br><br><div class="gmail_quote">20 октября 2010 г. 12:59 пользователь bir <span dir="ltr">&lt;<a href="mailto:nginx-forum@nginx.us">nginx-forum@nginx.us</a>&gt;</span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Дополнительная информация... Может, на<br>
какую идею натолкнет.<br>
<br>
По tcpdump-у на предмет исходящих<br>
соединений видно следующее (во время<br>
&quot;тормозов&quot;, под 10 тыс. rps).<br>
<br>
1. Первый SYN - улетает.<br>
2. В ответ прилетает SYN+ACK, как положено.<br>
Практически мгновенно, в пределах<br>
одной миллисекунды.<br>
3. А вот ответный ACK уезжает с изрядной<br>
задержкой, до 500 миллисекунд. За это<br>
время у меня успевает сработать<br>
proxy_connect_timeout, который по условиям задачи<br>
весьма жесткий (70 мсек).<br>
4. После этого следующий пакетик с<br>
исходящими данными (собственно<br>
запросом) - улетает опять-таки почти<br>
мгновенно, в пределах 1-2 мсек, и весь<br>
дальнейший диалог происходит с<br>
минимальными задержками.<br>
<br>
То есть, тормоза именно в п. 3, когда<br>
отсылается первый ACK после получения<br>
SYN+ACK.<br>
<br>
Когда тормозов нет (нагружаем 6 тыс. rps) -<br>
в п. 3 видим приятную картиру, ответный<br>
ACK улетает мгновенно, в пределах одной<br>
мсек.<br>
<br>
Подозреваю, что ядро блокируется где-то<br>
в районе списков pcb, или как их там<br>
зовут...<br>
<br>
Posted at Nginx Forum: <a href="http://forum.nginx.org/read.php?21,142358,142608#msg-142608" target="_blank">http://forum.nginx.org/read.php?21,142358,142608#msg-142608</a><br>
<div><div></div><div class="h5"><br>
<br>
_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
</div></div></blockquote></div><br>