Re: proxy read timeout закрывает соединение, не получив ответ

nginx_problem nginx-forum at nginx.us
Mon Jan 27 17:05:13 UTC 2014


В таком случае proxy_read_timeout нужно устанавливать по максимальному
времени выполнения задачи на бекенде?
Дело в том, что мы столкнулись с проблемой, когда один из бекендов принимал
соединение, но не выполнял задачу (или выполнял ее неверно) и никогда не
отвечал обратно, в итоге часть задач висела и ждала пока эти соединения не
завершатся по одному из таймаутов. Небольшой процент запросов требует
большого (от 5 до 10 минут) времени выполнения задачи на бекенде, поэтому,
выставляя proxy_read_timeout по минимуму, чтобы отсеять соединения с
нерабочим бекендом, мы потеряем часть легитимных соединений. Что Вы можете
посоветовать, как отсеять выполняющиеся на бекенде соединения от подвисших?
Есть ли у nginx на этот случай какой-то встроенный механизм? Например, если
работающий бекенд будет посылать какие-то промежуточные ответы, чтобы nginx
знал, что соединение живое и работает.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,246874,246878#msg-246878



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