Re: client closed prematurely connection в режиме proxy

Maxim Dounin mdounin на mdounin.ru
Пт Апр 27 11:52:34 UTC 2012


Hello!

On Fri, Apr 27, 2012 at 02:28:49PM +0300, Sergey Kobzar wrote:

> Максим
> 
> On 04/27/12 14:11, Maxim Dounin wrote:
> >Hello!
> >
> >On Fri, Apr 27, 2012 at 01:46:30PM +0300, Sergey Kobzar wrote:
> >
> >[...]
> >
> >>На фронтэнде:
> >>66.249.73.15 - - [27/Apr/2012:11:23:22 +0100] "GET ... HTTP/1.1" 504
> >>9700 "-" "Mozilla/5.0 (compatible; Googlebot/2.1;
> >>+http://www.google.com/bot.html)" "-" 10.17.92.12:80, 10.17.92.2:80
> >>504, 504
> >>66.249.73.209 - - [27/Apr/2012:11:23:23 +0100] "GET ... HTTP/1.1"
> >>504 9700 "-" "Mozilla/5.0 (compatible; Googlebot/2.1;
> >>+http://www.google.com/bot.html)" "-" 10.17.92.12:80, 10.17.92.2:80
> >>504, 504
> >
> >Бекенд не успели ответить за время proxy_read_timeout.
> >
> >[...]
> >
> >>На бэкенде на тот же запрос:
> >>access log:
> >>66.249.73.15 - - [27/Apr/2012:11:23:22 +0100] "GET ... HTTP/1.0" 499
> >>0 "-" "Mozilla/5.0 (compatible; Googlebot/2.1;
> >>+http://www.google.com/bot.html)" "-"
> >>
> >>error_log:
> >>2012/04/27 11:23:22 [info] 9804#0: *206566 client closed prematurely
> >>connection, so upstream connection is closed too while sending
> >>request to upstream, client: 66.249.73.15, server: localhost,
> >>request: "GET ... HTTP/1.0", upstream: "fastcgi://127.0.0.1:9001",
> >>host: "www.test.com"
> >
> >С точки зрения бекенда - соединение закрыли до того, как он успел
> >ответить.  Он это честно об этом написал в лог.
> >
> >>Т.е. общая картина:
> >>
> >>1. Клиент закрыл соединение - на бэкенде получили 499
> >>2. Вернули фронтенду 504
> >
> >Не так, см. выше.
> >
> >>3. 3 подобные ситуации и бэкэнд выкидываем из пула
> >
> >Что ещё делать с бекендом, если он не успевает отвечать?
> >
> >[...]
> 
> Спасибо за ответ.
> 
> Я не совсем понял. Т.е. это фронтенд (proxy) закрывает соединение с
> бэкендом, т.к. время ожидания ответа превысило proxy_read_timeout
> (60s) или все-же пользователь прервал соединение?

Фронтенд закрывает соединение.  Если бы закрывал пользователь - на 
фронтенде было бы 499.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru