Welcome! Log In Create A New Profile

Advanced

fastcgi_keep_conn on и fastcgi_finish_request() в PHP

February 15, 2014 03:36PM
При включенном keepalive в upstream к FastCGI бекенду на PHP, появляются ошибки 502, проблему нашли и воспроизводится она таким образом.
РНР скрипт, медленные операции выполняет в фон режиме после вызова функции fastcgi_finish_request(), тестовый скрипт

<?php

ignore_user_abort();
fastcgi_finish_request();
sleep(10);

?>

конфигурация Nginx

upstream fpm
{
server 127.0.0.1:9000;
keepalive 8;
}

server
{
......
fastcgi_keep_conn on;
fastcgi_param SCRIPT_NAME /index.php;
fastcgi_pass fpm;
......
}

Лог ошибки Nginx
[error] 7945#0: *5 upstream sent unexpected FastCGI record: 3 while reading response header from upstream ...

Лог ошибок PHP-FPM пустой.

В upstreem кеше 8 конектов, ошибка появляется когда Nginx ждет от PHP-FPM ответа в конекте который ещё не освободился, по моей логике PHP-FPM должен ответить Nginx когда скрипт завершит работу (sleep(10)) но этого не происходит и Nginx отдает 502 ошибку, судя по всему PHP-FPM после освобождения конекта не смог обработать следующий запрос от Nginx в этом конекте, подозреваю что функции fastcgi_finish_request() не рассчитана на повторное использования конекта.

Или я что-то делаю не правильно?
Subject Author Posted

fastcgi_keep_conn on и fastcgi_finish_request() в PHP

S.A.N February 15, 2014 03:36PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

Maxim Dounin February 17, 2014 09:40AM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

S.A.N February 17, 2014 01:21PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

Валентин Бартенев February 17, 2014 02:28PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

S.A.N February 17, 2014 04:29PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

Maxim Dounin February 18, 2014 07:34AM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

S.A.N February 20, 2014 08:27PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

Vladislavik January 18, 2019 01:12PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

Maxim Dounin January 18, 2019 05:30PM

Re: fastcgi keep conn on и fastcgi finish request() в PHP

S.A.N January 19, 2019 09:37AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 288
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