NGINX / PHP-FPM: Ajax primeiro pedido lento, bons próximos

2
  • O CMS é Elxis , que vem de uma variante do Joomla (PHP).
  • O servidor está executando nGinx com PHP-FPM
  • Todos os pedidos são registrados e executados, eventualmente, B U T !!!

Ao disparar uma solicitação específica por meio da barra de URL, a solicitação é executada imediatamente. No entanto, quando disparado via ajax (através de jQuery), o mesmo pedido tem um comportamento muito estranho.

Ou seja: primeiro pedido (em um gerenciador de mídia), para ver os detalhes da imagem, é demitido com o Ajax. É registrado no navegador, mas não no servidor ... Não apenas ainda ... Após alguns bons 40-50 segundos, a solicitação aparece no servidor e, em seguida, é respondida imediatamente.

Todas as solicitações a seguir são executadas imediatamente, sem problemas. Apenas o primeiro é áspero ..

Estou com problemas porque não há nenhum erro registrado em nenhum lugar: tudo parece sensato, exceto pelo atraso da primeira solicitação para acessar o servidor ...

Não é roteamento (o site já está ativo e os pedidos foram atendidos), não é resolução (o ip está no meu arquivo / etc / hosts).

E para adicionar um pouco de cereja em cima do bolo, tentando capturar pacotes (tcpdump) no servidor não produz saída: A solicitação ainda não está aqui ... Tentei no cliente também: sem saída - por pelo menos 40 segundos ...

Está tudo no navegador, o console do desenvolvedor não mostra erros, apenas uma solicitação pendente.

Alguma coisa toca alguma coisa para alguém?

The server:
nginx version: nginx/1.6.2
PHP 5.6.7-1 (cli)
PHP 5.6.7-1 (fpm-fcgi)

jQuery versão 1.11
O cliente: tentei no Firefox 39 (Ubuntu) e no Chromium 41

Observação: fiz a mesma pergunta no stackoverflow, pois não consigo imaginar se é o código ou a arquitetura a ser o culpado ...

    
por Stavros Souvatzis 10.04.2015 / 17:39

1 resposta

0

Eu enfrentei um tipo semelhante de problema e acabei aumentando o número de funcionários php-fpm. Eu usei as seguintes configurações em www.conf (pool.d) para resolver o problema que estava enfrentando. Eu tinha uma configuração de servidor de análise que acompanhava as exibições de página e havia um atraso de 15 a 20 segundos na API registrando as exibições de página. Ajustar as seguintes configurações resolveu o meu problema, talvez possa ajudá-lo.

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
    
por 02.02.2018 / 22:51