client timed out

Igor Sysoev is at rambler-co.ru
Wed Feb 14 21:12:52 MSK 2007


On Wed, Feb 14, 2007 at 08:35:05PM +0300, Dmitry Frolov wrote:

> Думал поставить nginx в качестве акселератора, который  бы быстро
> скачивал контент с бэкенда и потом медленно отдавал клиенту.
> На эту тему и тестировал и обнаружилась одна странность.
> 
> Если начать скачивать документ, причем документ скачивается nginx'ом с
> бэкенда целиком, а потом закрыть клиентское соединение (прибить wget),
> nginx через некоторое время пишет в лог
> 
> 007/02/14 20:19:51 [info] 16608#0: *15 client timed out (110:
> Connection timed out) while sending to client, client: 172.16.7.2,
> server: XXX, URL: "/healthcheck/100k.txt", upstream:
> "http://127.0.0.1:8081/healthcheck/100k.txt", host:
> "172.16.24.22:8888"
> 
> Вопрос - а почему не сразу?
> 
> Если документ в буфере+файле не поместился, то есть соединение с
> бэкендом не закрыто, то при закрытии клиентского соединения сразу
> пишется:
> 
> 2007/02/14 20:18:05 [info] 16608#0: *11 client closed prematurely
> connection, so upstream connection is closed too (104:Connection reset
> by peer) while reading upstream, client: 172.16.7.2, server: XXX, URL:
> "/healthcheck/100mb.txt", upstream:
> "http://127.0.0.1:8081/healthcheck/100mb.txt", host:
> "172.16.24.22:8888"
> 
> В первом же случае worker остается занят еще некоторое время, что
> соотвественно может привести к проблемам.

Нужен отладочный лог. Вообще же, очень похоже на проблемы в Линуксе,
когда сообщение о закрытии соединения не попадает в приложение.


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





More information about the nginx-ru mailing list