Re: HTTP проксирование 1.1

Anatoly Mikhailov anatoly at sonru.com
Thu Mar 20 14:38:58 UTC 2014


On 20 Mar 2014, at 13:32, Maxim Dounin <mdounin at mdounin.ru> wrote:

> Hello!
> 
> On Thu, Mar 20, 2014 at 12:03:23PM +0000, Anatoly Mikhailov wrote:
> 
>> 
>> On 19 Mar 2014, at 13:37, Maxim Dounin <mdounin at mdounin.ru> wrote:
>> 
>>> Hello!
>>> 
>>> On Wed, Mar 19, 2014 at 10:42:26AM +0000, Anatoly Mikhailov wrote:
>>> 
>>>> 
>>>> On 18 Mar 2014, at 15:10, Maxim Dounin <mdounin at mdounin.ru> wrote:
> 
> [...]
> 
>>>> супер, переписал конфигурацию для проксирования S3 на upstream, получилось очень классно,
>>>> вопрос - почему бы не сделать keepalive для бэкэнда по умолчанию?
>>> 
>>> Использование постоянных соединений полезно в основном в тех 
>>> случаях, когда до бекенда - далеко.  В условиях близких бекендов 
>>> оно обычно не нужно.  Наоборот, в некоторых ситуациях постоянные 
>>> соединения могут повредить - например, если бекенд сильно ограничен по 
>>> количеству соединений, которые он может обрабатывать.  В 
>>> документации даже специально добавлено замечание про это, т.к. 
>>> люди периодически наступают, cм. http://nginx.org/r/keepalive/ru.
>>> 
>>> Так что я к идее сделать keepalive к бекендам поведением по 
>>> умолчанию - отношусь скептически.
>>> 
>> 
>> Я правильно понимаю, keepalive (в контексте upstream) задает количество
>> TCP соединений, которые не будут закрываться, даже при отсутствии будущих запросов?
> 
> Да.
> 
> Следует, однако, учитывать, что это число - на каждый рабочий 
> процесс.
> 
>> Если да, то какой таймаут, такой же как для клиентских TCP подключений, указанных
>> через директиву keepalive_timeout?
> 
> Таймаут определяется тем, сколько соединение будет поддерживать 
> бекенд.  Сам nginx ничего закрывать не пытается.
> 
>> Вопрос второй - если известно, что бэкэнд держит, скажем, 50 соединений, 
>> то keepalive 50 поможет нам повторно их использовать в будущем, без повторных syn+ack?
> 
> Если бекенд держит только 50 соединений, то ставить в конфиге 
> "keepalive 50" - нецелесообразно, т.к. при таких настройках весь 
> бекенд может быть занят одним рабочим процессом.

Все понятно, кроме этого момента. Если keepalive - нижняя граница, то второй рабочий
процесс откроет больше соединений, чем указано в keepalive... или здесь все по другому?

> 
> -- 
> Maxim Dounin
> http://nginx.org/
> 
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20140320/b672ae25/attachment.html>


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