<div dir="ltr"><div><div>Вы таки хотите странного. Keep-alive коннект будет рваться по любому т.к. за время пока машина заблокирована heaкtbeat уже давно кончится в коннекте.<br></div>И если рвать принудительно коннект - получится ровно тоже самое что и при неиспользовании keep-alive.<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">19 августа 2015 г., 22:30 пользователь Anton Yuzhaninov <span dir="ltr"><<a href="mailto:citrin@citrin.ru" target="_blank">citrin@citrin.ru</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Захотелось использовать AnyEvent::HTTP в приложении, которое большую часть времени проводит вне AnyEvent, но столкнулся с такой проблемой: соединения висящие в keep-alive не закрываются и закрытие коннекций удалённой стороной тоже не отслеживается.<br>
<br>
Простейший test case выглядит как<br>
<br>
http_get<br>
<br>
sleep 20; # за это время сервер закроет keep-alive соединение<br>
<br>
http_get<br>
<br>
Второй GET получает Connection reset by peer<br>
<br>
Более полный пример тут: <a href="http://termbin.com/n5jp" rel="noreferrer" target="_blank">http://termbin.com/n5jp</a><br>
<br>
Без keep-alive этой проблемы не возникнет, но keep-alive хочется, потому что подряд делается большая пачка запросов. Можно ли как то обойти эту проблему? Например принудительно закрыть keep-alive коннекции после получается всех нужных ответов.<span class="HOEnZb"><font color="#888888"><br>
-- <br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org" target="_blank">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" rel="noreferrer" target="_blank">http://moscow.pm.org</a><br>
</font></span></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature">С уважением, Денис Федосеев<br></div>
</div>