Nginx e php-fpm aguardam para concluir solicitações anteriores quando 6+ conexões simultâneas

1

Não consigo descobrir como configurar o Nginx e o php-fpm para permitir mais de 6 conexões simultâneas a partir de um único IP. Eu tenho os seguintes arquivos PHP simples (sem FW):

<?php
// long-request.php
sleep(15);

-

<?php
// instant-request.php
echo 'Meow World!';

Se eu abrir mais de 6 janelas do navegador com long-request.php , então instant-request.php será atrasado até que a janela com a primeira solicitação de longo prazo seja concluída. Quando isso acontece php-fpm me dá o seguinte status:

pool:                 www
process manager:      ondemand
start time:           28/Jun/2018:23:30:05 +0200
start since:          183
accepted conn:        56
listen queue:         0
max listen queue:     0
listen queue len:     0
idle processes:       0
active processes:     7
total processes:      7
max active processes: 7
max children reached: 0
slow requests:        0

Minha configuração: MacOS 10.13.5 (17F77), PHP 7.2.5, nginx / 1.13.12

php-fpm.d/www.conf

pm = ondemand
pm.max_children = 100

Eu tentei várias configurações. Eu coloquei pm para estática, dinâmica, eu aumentei o número de * _servers, nada ajudou.

edit: Aqui está a saída de /usr/local/var/log/php-fpm.log (nada suspeito)

[28-Jun-2018 23:57:07] NOTICE: fpm is running, pid 62887
[28-Jun-2018 23:57:07] NOTICE: ready to handle connections
    
por Jiri Mihal 28.06.2018 / 23:09

1 resposta

1

Eu encontrei a resposta. Foi causado pelo número máximo de conexões paralelas permitidas pelo protocolo browser / http. Leia a resposta detalhada em Stackoverflow.

    
por 29.06.2018 / 00:51

Tags