Welcome! Log In Create A New Profile

Advanced

Re: fastcgi + keepalive

Maxim Dounin
July 21, 2016 09:16AM
Hello!

On Thu, Jul 21, 2016 at 07:49:28AM -0400, skeletor wrote:

> Всем привет.
> Почему вот такая конструкция не поддерживает keepalive:
>
> location / {
> ...
> fastcgi_pass 127.0.0.1:9000;
> fastcgi_keep_conn on;
> ...
> }
>
> а вот такая - поддерживает:
>
> upstream fcgi_backend {
> server 127.0.0.1:9000;
> keepalive 32;
> }
> ...
> location / {
> ...
> fastcgi_pass fcgi_backend;
> fastcgi_keep_conn on;
> ...
> }
>
> Проверял состояние соединений через netstat.

Для поддержания постоянных соединений требуется две вещи:

- Проинструктировать бекенд, чтобы по завершению запроса он
соединение не закрывал. Для FastCGI это делает директива
fastcgi_keep_conn.

- Включить собственно кеш соединений. Это делает директива
keepalive в рамках блока upstream.

При использовании адреса в директиве fastcgi_pass, как в вашем
первом примере, создаётся неявный upstream с настройками по
умолчанию. Кеша соединений в нём нет, и соответственно постоянные
соединения не используются.

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

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

fastcgi + keepalive

skeletor July 21, 2016 07:49AM

Re: fastcgi + keepalive

Maxim Dounin July 21, 2016 09:16AM

Re: fastcgi + keepalive

skeletor July 21, 2016 09:39AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 99
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready