Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: proxy read timeout закрывает соединение, не получив ответ
- To: nginx-ru@xxxxxxxxx
- Subject: Re: proxy read timeout закрывает соединение, не получив ответ
- From: "nginx_problem" <nginx-forum@xxxxxxxx>
- Date: Mon, 27 Jan 2014 12:05:13 -0500
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=selenium.jlkhosting.com; s=x; h=Date:Sender:From:References:In-Reply-To:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=+LgbdykjT0OfkX5AoO1S0VbQmTkehN7IUykPHVcqNrg=; b=juxMS3saFAkNC6/xZb/bmx1u7JMqmTO0pFd0wgtIrjNLSxdXQAXJRL74G8bFXyDjwSbf21PD6lLD4xWXyTW2rwpKJddfqnJ+7ZDXti5EeVYwc8FPCzM093zGTi+J279iUV/59hNWi5OQcEm4ZPgbh6aaUU36MJNq/WbcXcKPDSM=;
- In-reply-to: <20140127161153.GB1835@mdounin.ru>
- References: <20140127161153.GB1835@mdounin.ru>
В таком случае 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 mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|