Latência entre o IIS e o SQL no mesmo físico, duas VMs

2

Eu tenho um único servidor (CPUs core de 2 x 4, 32 GB de RAM), que é um host Windows Server 2012 Hyper V, e hospeda duas VMs guest (também instâncias do Windows Server 2012). Um deles é um servidor web, o outro é um servidor SQL.

Ao acessar uma página com mais de 50 registros, há latência perceptível. Eu capturo / relato os tempos de cada iteração no loop e cada iteração é de cerca de 20 a 30 milissegundos. Claro, isso equivale a mais de um segundo de latência para todo o loop.

Eu achei que talvez o SQL precisava ser ajustado, mas executando o profiler nele, as consultas estão mostrando quase 0 de duração, então parece que o gargalo está em trânsito entre as duas VMs.

Eu tenho ambas as VMs configuradas para usar o NIC real (vs. usando um VNIC), então talvez isso seja parte do meu problema.

Além disso, este é um site ASP clássico, portanto, ele está usando o provedor SQL OLE DB e estou me perguntando se isso é parte do problema.

Esta é uma nova configuração de servidor, a partir de uma configuração existente do servidor Windows 2003 / IIS6, na qual a Web e o DB são executados na mesma instância do servidor (sem virtualização). Nessa configuração, não há tal latência ao passar o cursor sobre esse cursor. Mas há muitas variáveis, não sei por onde começar a descartar as coisas.

    
por Jerad Rose 23.06.2013 / 00:28

2 respostas

0

No meu caso, este foi um alarme falso. Eu pensei que a latência era exclusiva para essa nova configuração do Hyper-V, mas também estava acontecendo no servidor ao vivo também. Foi devido a uma mudança que foi feita no nosso código recentemente, e o problema não havia sido descoberto ainda em direto.

    
por 27.06.2013 / 03:40
0

O motivo para esse tipo de latência em duas máquinas virtuais dentro da mesma rede é o fato de que a mesma rede ainda é aplicada. Você não quer fazer um loop através de registros indo para o SQL Server para cada registro, mas, em vez disso, baixar o conjunto de registros inteiro de uma vez para o servidor da Web e processar tudo de uma vez.

    
por 27.06.2013 / 07:15