Php - conectando ao banco de dados remoto muito lento
-
07-07-2019 - |
Pergunta
Eu tenho um novo servidor VPS, e eu estou tentando obtê-lo para conectar a outro servidor no mesmo ISP. Quando eu conecto via ferramenta de linha de comando do mysql, a conexão é muito rápida.
Quando eu uso PHP para se conectar ao DB remoto, o tempo de conexão pode levar até 5 segundos. Consultas após este são executados rapidamente.
Isto não se limita ao MySQL, usando file_get_contents () para baixar um arquivo de quase qualquer outro servidor dá o mesmo lag. Usando wget para obter o arquivo não tem esse lag.
Eu cronometrado consultas DNS de dentro PHP usando dns_get_record (), e estes são rápidos (1-2 milissegundos).
Todos os pensamentos sobre o que na configuração php pode estar causando isso?
Graças.
Solução 2
Eu acabei de atualizar a partir do PHP 5.1.6 PHP 5.2.6, eo problema foi embora. Ele definitivamente foi um assunto pesquisa de DNS dentro do PHP, o seguinte levaria cerca de 5 segundos para executar:
gethostbyname('example.com')
Eu tenho um sentimento IPV6 foi uma questão (principalmente um palpite de ler sobre isso on-line), mas eu não tenho nenhuma prova.
Outras dicas
Gostaria de verificar para ver o que o modo PHP é executado em, é por algum motivo a execução dos scripts como um CGI. Basicamente é a própria PHP realmente lento, e sua única perceptível ao executar operações remotas.
Verifique a configuração do servidor web. Também se é uma opção, tente PHP na linha de comando e ver se ele tem um desempenho melhor sem a camada de servidor web envolvidos.