Welcome! Log In Create A New Profile

Advanced

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

Maxim Dounin
March 19, 2014 09:38AM
Hello!

On Wed, Mar 19, 2014 at 10:42:26AM +0000, Anatoly Mikhailov wrote:

>
> On 18 Mar 2014, at 15:10, Maxim Dounin <mdounin@mdounin.ru> wrote:
>
> > Hello!
> >
> > On Tue, Mar 18, 2014 at 03:08:31PM +0000, Anatoly Mikhailov wrote:
> >
> >>
> >> On 18 Mar 2014, at 13:51, Maxim Dounin <mdounin@mdounin.ru> wrote:
> >>
> >>> Hello!
> >>>
> >>> On Tue, Mar 18, 2014 at 12:28:08PM +0000, Anatoly Mikhailov wrote:
> >>>
> >>>>
> >>>> On 18 Mar 2014, at 11:08, Maxim Dounin <mdounin@mdounin.ru> wrote:
> >>>>
> >>>>> Hello!
> >>>>>
> >>>>> On Tue, Mar 18, 2014 at 11:04:27AM +0000, Anatoly Mikhailov wrote:
> >>>>>
> >>>>>> Добрый день,
> >>>>>>
> >>>>>> По последнему blog post (http://nginx.com/blog/load-balancing-with-nginx-plus-part2/)
> >>>>>> возник вопрос: какой эффект производит proxy_set_header Connection “"?
> >>>>>>
> >>>>>> Поясню вопрос на примере, имеется следующий конфиг для проксирования
> >>>>>> S3 запросов (опущены лишние детали):
> >>>>>>
> >>>>>> location ~* ^/i/(.*) {
> >>>>>> proxy_http_version 1.1;
> >>>>>> proxy_set_header Authorization '';
> >>>>>> proxy_hide_header Set-Cookie;
> >>>>>> proxy_ignore_headers "Set-Cookie”;
> >>>>>> ...
> >>>>>> proxy_pass ...;
> >>>>>> }
> >>>>>>
> >>>>>> В данном случае версия http для проксирования установлена в 1.1,
> >>>>>> то есть ожидаем повторное использование подключения,
> >>>>>> что в данном случае изменит proxy_set_header Connection “" ?
> >>>>>
> >>>>> По умолчанию добавляется "Connection: close"[1], и использование
> >>>>> "proxy_set_header Connection ''" нужно, чтобы этого избежать.
> >>>>>
> >>>>> http://nginx.org/r/proxy_set_header/ru
> >>>>
> >>>> Максим, понятно, HTTP подключение закрывается после каждого запроса по умолчанию,
> >>>> но достаточно ли Connection “” для реиспользования HTTP 1.1 подключения? Обязательно ли
> >>>> явно добавлять блок upstream и указывать директиву keepalive?
> >>>
> >>> Нужно и то, и другое. Из заголовков запроса нужно убрать
> >>> "Connection: close", чтобы бекенд не закрывал соединение, а сам
> >>> nginx - проинструктировать соединения сохранять и использовать
> >>> повторно.
> >>
> >> Понял, спасибо, Максим! Контекст директивы keepalive для бэкэнда только upstream,
> >> если смотреть документацию, но может есть какой-то элегантный способ передать
> >> keepalive в proxy_pass сразу, без объявления блока upstream?
> >
> > Нет.
>
> супер, переписал конфигурацию для проксирования S3 на upstream, получилось очень классно,
> вопрос - почему бы не сделать keepalive для бэкэнда по умолчанию?

Использование постоянных соединений полезно в основном в тех
случаях, когда до бекенда - далеко. В условиях близких бекендов
оно обычно не нужно. Наоборот, в некоторых ситуациях постоянные
соединения могут повредить - например, если бекенд сильно ограничен по
количеству соединений, которые он может обрабатывать. В
документации даже специально добавлено замечание про это, т.к.
люди периодически наступают, cм. http://nginx.org/r/keepalive/ru.

Так что я к идее сделать keepalive к бекендам поведением по
умолчанию - отношусь скептически.

--
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

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

Anatoly Mikhailov March 18, 2014 07:06AM

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

Maxim Dounin March 18, 2014 07:10AM

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

Anatoly Mikhailov March 18, 2014 08:30AM

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

Maxim Dounin March 18, 2014 09:52AM

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

Anatoly Mikhailov March 18, 2014 11:10AM

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

Maxim Dounin March 18, 2014 11:12AM

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

Anatoly Mikhailov March 19, 2014 06:44AM

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

Anatoly Mikhailov March 19, 2014 07:16AM

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

Maxim Dounin March 19, 2014 09:38AM

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

Anatoly Mikhailov March 20, 2014 08:04AM

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

Maxim Dounin March 20, 2014 09:34AM

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

Anatoly Mikhailov March 20, 2014 10:40AM

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

Maxim Dounin March 20, 2014 11:12AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 116
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready