5-7 segundos de latência entre o servidor Apache e o servidor MySQL quando o site chama no servidor de banco de dados

1

Atualmente, estou executando um ambiente virtualizado para meu servidor da Web e do banco de dados. Quando eu acesso o servidor web ou o servidor MySQL individualmente, eles são rápidos. Eu também tenho sites em execução no servidor web que não exigem o servidor db e todos carregam rapidamente. No entanto, quando eu acesso meu site hospedado que requer que o servidor da web chame a partir do servidor db, há uma latência de cerca de 5 a 7 segundos para cada carregamento de página. Isso foi confirmado com um site muito simples e com uma configuração do Word Press também. Aqui está a configuração:

Servidor Web - CentOS 6.5, Apache 2.2.15

Servidor de banco de dados - CentOS 6.5, MySQL 5.1.73

A minha pergunta é, os servidores estão continuamente autenticando uns com os outros (e, portanto, causando latência) em cada chamada de db único? Se for esse o caso, alguém sabe como autenticar permanentemente entre os dois?

Eu poderia estar longe desta suposição e autenticação não poderia ter nada a ver com isso. Estou completamente aberto a todas e quaisquer ideias neste momento. Muito obrigado.

V / R,

Tony

    
por Bearicorn 26.03.2014 / 17:20

1 resposta

0

Atualização 17 de abril de 2014

O DNS foi de fato o culpado. Depois que adicionei cada servidor ao outro arquivo host dns, a latência desapareceu. Para colocar especificamente o que eu fiz.

Primeiro, fui para os arquivos host do dns localizados em / etc / hosts (observe que são hosts, não hosts.conf) nos dois servidores e adicionados cada servidor: 192.168.0.1 servidor 1 192.168.0.2 servidor 2

Em seguida, fui ao arquivo de configuração do nsswitch localizado em /etc/nsswitch.conf e me certifiquei de que os dois arquivos de configuração (um em cada servidor) continham a seguinte linha: hosts: arquivos dns

Em seguida, fiz o ping no nome do host e consegui resolver o IP privado. A latência desapareceu agora !!! Obrigado por toda a ajuda e responde tudo.

V / R,

Tony

* Materiais antigos de postagens aqui *

Isso é muita latência, mesmo para configurar a conexão e autenticar, o serviço da Web e o servidor db estão na mesma máquina virtual (mesmo servidor)? Caso contrário, pode haver um problema de resolução de DNS.

Eu sugiro escrever o código php mais simples que se conecta ao banco de dados usando mysql_connect primeiro (que não mantém conexões) e o mais novo mysqli que persiste às conexões link e verifique quanto tempo eles demoram, isso excluirá um problema com o código do aplicativo da web.

Outro teste é ir ao servidor (web) e conectar-se ao db manualmente com o comando mysql e ver quanto tempo demora.

Em todos esses testes, além da conexão, você pode adicionar uma simples consulta de seleção.

    
por 26.03.2014 / 17:51