Estamos tentando ampliar nossas instalações do Drupal e decidimos algumas caixas MySQL dedicadas. Infelizmente, estamos com extrema lentidão quando tentamos usar o banco de dados remoto - o tempo de carregamento da página varia de ~ 200 milissegundos a 5-10 segundos.
A latência entre os servidores é mínima - um décimo ou dois de milissegundo.
PING 10.37.66.175 (10.37.66.175) 56(84) bytes of data.
64 bytes from 10.37.66.175: icmp_seq=1 ttl=64 time=0.145 ms
64 bytes from 10.37.66.175: icmp_seq=2 ttl=64 time=0.157 ms
64 bytes from 10.37.66.175: icmp_seq=3 ttl=64 time=0.157 ms
64 bytes from 10.37.66.175: icmp_seq=4 ttl=64 time=0.144 ms
64 bytes from 10.37.66.175: icmp_seq=5 ttl=64 time=0.121 ms
64 bytes from 10.37.66.175: icmp_seq=6 ttl=64 time=0.122 ms
64 bytes from 10.37.66.175: icmp_seq=7 ttl=64 time=0.163 ms
64 bytes from 10.37.66.175: icmp_seq=8 ttl=64 time=0.115 ms
64 bytes from 10.37.66.175: icmp_seq=9 ttl=64 time=0.484 ms
64 bytes from 10.37.66.175: icmp_seq=10 ttl=64 time=0.156 ms
--- 10.37.66.175 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 8998ms
rtt min/avg/max/mdev = 0.115/0.176/0.484/0.104 ms
Os devel.module
timers do Drupal mostram que as consultas ao banco de dados não estão mais lentas no banco de dados remoto - cerca de 150 microssegundos, seja o servidor local ou o remoto. A criação de perfil com o XHProf mostra os tempos de execução do PHP que também não estão fora de sintonia.
O número de consultas não parece fazer diferença - parecemos o mesmo atraso de 5 a 10 segundos, independentemente de uma página ter 12 consultas ou 250.
Alguma sugestão sobre onde devo começar a solucionar problemas aqui? Estou bastante confuso.
fonte
skip-name-resolve
fez o truque. Muito Obrigado!O motivo pode ser adicionado atrasos ao usar a resolução de nomes no servidor MySQL. Para todas as conexões, o mysql verifica o nome DNS do cliente, o que aumentará drasticamente a latência.
Você pode verificar se esse é o seu caso, se você tiver a linha
skip-name-resolve
no my.cnf. Se não estiver lá, adicione esta linha, reinicie o servidor e tente novamente.fonte
skip-name-resolve
fez o truque. Muito Obrigado!