solicitação de url abortada http traffic apache

2

Estou tendo problemas em nosso aplicativo php extjs. Temos dois servidores e há um balanceamento de carga (NLB) lá trabalhando de maneira round robin. Ao usar o sistema, o usuário está tendo alguns problemas, como dados não estão sendo carregados do banco de dados e também as solicitações http estão sendo canceladas. Eu não sei realmente de onde vamos começar a nossa solução de problemas.

Em qualquer página específica do site, quando você abriu uma página, vários recursos (informações do usuário, menu suspenso, a página inteira etc.) não foram carregados. Se você atualizou, a página pode funcionar bem, o mesmo conjunto de ativos pode falhar ao carregar ou ativos diferentes podem falhar ao carregar.

Não havia nada em nenhum dos logs do Apache sobre as solicitações que falharam, mas como parecia apontar para um problema do Apache, reiniciámos o Apache. A primeira vez que tentamos, não fez diferença, mas cerca de 10 minutos depois, na ausência de uma solução melhor, tentamos novamente. Estranhamente, o problema desapareceu imediatamente. E novamente vem depois de 1-2 dias.

Eu também fiz o processo php para múltiplos, para que diferentes requisições recebam arquivos php diferentes, mas parece que o problema não está lá.

    
por Farhan 20.12.2012 / 18:13

1 resposta

1

A descrição do problema foi muito geral, mas há algumas coisas que você pode tentar encontrar na causa do problema:

  • Verifique os códigos de retorno HTTP para todos os aplicativos usando o Chrome (F12), o FireBug no FireFox ou algo similar. Este tipo de erro que você está recebendo e em quais recursos deve apontar você na direção certa.
  • Defina o relatório de erros em PHP para E_ALL durante o teste e verifique novamente o Logs do Apache.
  • Verifique todos os registros em busca de erros e avisos relevantes (sistema, banco de dados, segurança, etc ...).
  • Ignorar o balanceador de carga e acessar os servidores diretamente.
  • Adicione a saída de registro manual em seu aplicativo para restringir onde as coisas funcionam e não funcionam.

Se o problema for intermitente, você precisará encontrar uma maneira de duplicar o problema. Tente testar a carga com o ApacheBench ou um programa semelhante. Uma vez que você possa duplicá-la regularmente, é apenas uma questão de zerar onde está ocorrendo e por quê.

EDITAR:

Meu palpite de suas fotos é que o aplicativo travou, provavelmente de uma maneira que impedia que uma mensagem de erro fosse emitida (supondo que ainda não houvesse uma). Se é sempre esse aplicativo que está falhando, você pode limitar sua investigação a esse aplicativo. É uma entrada específica que causa uma falha, é baseada em carga, é aparentemente aleatória, etc ...? Você também pode adicionar temporariamente mensagens manuais error_log () ao aplicativo para restringir o local onde ele está falhando .

    
por 20.12.2012 / 19:14