Por que uma conexão de banco de dados via LAN seria mais lenta que uma conexão WAN?

Por que uma conexão de banco de dados via LAN seria mais lenta que uma conexão WAN?

Há muito tempo que percebi que uma conexão de banco de dados MySQL na minha LAN era significativamente mais lenta do que uma conexão de banco de dados pela Internet.

Estou executando o Windows 7 de 32 bits e estou conectado a um switch usando um cabo Ethernet. O switch está conectado a um modem/roteador que é onde minha conexão com a Internet chega ao prédio. Não estou usando WiFi.

Executei o seguinte código:

//store current time
$start = microtime(true);

//connect to database outside my LAN
$c1 = mysql_connect("1.2.3.4", "user1", "pass1");
mysql_select_db("database1", $c1);

//print out the time taken in seconds
echo microtime(true) - $start, "<br>";

//close the database connection
mysql_close($c1);


//store current time
$start2 = microtime(true);
//connect to database on my LAN
$c2 = mysql_connect("192.168.0.10", "user2", "pass2");
mysql_select_db("database2", $c2);

//print out time taken in seconds
echo microtime(true) - $start2, "<br>";

//close database connection
mysql_close($c2);

três vezes que retornou os seguintes tempos:

Banco de dados WAN externo: 0,054498910903931, 0,055356025695801, 0,05623197555542

Banco de dados LAN interno: 5.0052859783173, 5.0053160190582, 5.005627155304

A velocidade de transferência de arquivos LAN (usando o Samba para compartilhar a unidade na máquina Ubuntu) é de aproximadamente 30 MB/s e minha velocidade de conexão de banda larga é de 35 Mbps para baixo e 7 Mbps para cima.

Curiosamente, o login no servidor local usando SSH é bastante lento.

Não sei de quais outras informações você pode precisar, então peça mais informações. Não sei por que uma conexão local éentãomuito mais lento!

Responder1

Usei o Wireshark para inspecionar o tráfego de conexão e encontrei várias solicitações MDNS que pareciam estar falhando.

Posteriormente me depareieste bug com a configuração do switch de serviço de nomes do Ubuntue alterei o /etc/nsswitch.confarquivo para usar mDNS como último recurso, conforme descrito noConfiguração de rede do servidor Ubuntupágina.

Reiniciar os serviços necessários (MySQL, SSH) acelerou tudo como mágica!

informação relacionada