Desempenho lento com o site .NET 3.5 no IIS 6, site .NET 2.0 funcionando bem

1

Estou tentando mover nossos dois sites e alguns aplicativos relacionados de um Virtual Private Server para outro. O novo servidor é muito mais poderoso, tem mais memória e mais espaço em disco. No entanto, um dos sites da web está apresentando um desempenho ruim no novo ambiente.

Copiei a configuração do nosso antigo servidor exportando as configurações do IIS e os arquivos xcopy. Um dos sites está no .NET 2.0 e tudo parece bem com esse site. No entanto, nosso outro site (um carrinho de compras de terceiros que usa o .NET 3.5) é extremamente lento, especialmente quando você passa da página do carrinho de compras para a página de check-out.

Eu tenho caçado por 2 dias para uma explicação para isso. Durante este tempo eu fiz várias coisas para tentar ver se eu posso pelo menos fazer o comportamento mudar, mas com absolutamente nenhum sucesso. Aqui está uma lista de algumas das coisas que tentei:

  1. Executando aspnet_regiis -i -enable e várias outras opções dessa ferramenta, como -ua
  2. Desinstalando e reinstalando todas as versões do .NET
  3. Removendo todos os outros sites do IIS, exceto o que está em questão
  4. Excluído e adicionado manualmente um novo nó do site no IIS
  5. Varrei manualmente o código em busca de pistas sobre o que está acontecendo. Há uma chamada para o servidor da UPS nessas 2 páginas que não está em nenhum outro lugar no aplicativo, mas consegui fazer telnet para esse servidor.
  6. Passamos pelo guia de instalação do aplicativo para garantir que não houvesse etapas que eu tenha perdido.
  7. Reinstalou o certificado SSL e verificou a configuração do certificado intermediário.
  8. Reiniciou o servidor.
  9. Comparou as chaves do registro relacionadas ao IIS.
  10. XCopiou outra cópia desta versão do aplicativo para o diretório (removendo o antigo primeiro), caso o original estivesse corrompido.
  11. Passou pelas definições de configuração no IIS, incluindo o arquivo de log, pools de aplicativos, SSL e configuração do ASP.NET.
  12. Descobriu que o arquivo de paginação de memória virtual não estava configurado. Tentei configurar um, mas o software de virtualização (virtuozzo) desativou a configuração quando reinicializei.

Enfim, pensei em colocar isso para o caso de haver algo que eu tenha esquecido. Eu estou fazendo o teste usando uma configuração de arquivo de hosts desde que o DNS está apontando para o servidor antigo. O nome do host é necessário para acessar o site. As duas configurações do mesmo site podem ser comparadas alternando essas entradas de arquivo de 2 hosts:

# New Server (with slowness)
#173.0.131.172  www.foldingchairdepot.com
# Old Server (working fine)
67.215.161.58   www.foldingchairdepot.com

O novo servidor é o Windows Server 2003 RC2 Enterprise Edition.

O estranho é que, embora eu esteja vendo lentidão no cliente, praticamente não há utilização da CPU no servidor. Eu verifiquei de várias maneiras que estou definitivamente alcançando o novo servidor com a entrada do arquivo host. Eu também tentei com 2 conexões de internet diferentes e várias versões de navegadores diferentes.

Qualquer ajuda para tentar resolver este problema seria apreciada.

    
por NightOwl888 14.03.2011 / 18:59

2 respostas

1

Depois de fazer mais algumas pesquisas, descobri qual era o problema. Acontece que o novo Virtual Private Server foi hospedado em uma instalação diferente da antiga. Isso em si não era um problema, mas o banco de dados ainda estava no local antigo a 1.200 milhas de distância.

De qualquer forma, a solução para o meu problema é mover o banco de dados para o mesmo recurso (e LAN) que o VPS e estou no processo de fazer isso agora.

    
por 22.03.2011 / 10:02
0

Você certamente fez sua lição de casa. Isso é bom e ruim. Isso significa que você forneceu informações excelentes, mas não deixa sugestões fáceis de serem oferecidas. ;)

Algumas sugestões:

  1. Percebi que a página inicial falha "na maior parte do tempo" no site antigo e notei que até algumas imagens falham. Por exemplo, esta imagem . Essa é possivelmente a causa do fracasso. Se você puder rastrear por que o arquivo .gif falha, isso pode levar a respostas sobre o resto.

  2. Verifique se há alguma pista nos registros do IIS. Se ainda não o fez, você pode editar as configurações de registro para incluir tempo. Isso é útil, assim como o código de status. Compare uma visita ao bom servidor com o novo servidor e veja se eles são diferentes. Quaisquer diferenças serão bons leads.

  3. Confira o Event Viewer e o Process Monitor (www.systeminternals.com). O Procmon é útil para rastrear problemas de acesso negado.

  4. Tente comparar um site estático (algumas páginas html) entre os servidores e, em seguida, um site .asp simples e, finalmente, um site .aspx simples. Veja se você pode restringir em que ponto o desempenho difere.

por 22.03.2011 / 04:47