Pergunta

Acabei de instalar o Windows 7 x64 Ultimate no meu PC de mesa.Instalei IIS, Visual Studio 2008, registrei ASP.NET, etc.

Eu tenho um site ASP.NET 3.5 no qual estou trabalhando, rodando EXTREMAMENTE lento neste novo IIS.Nos servidores STA e PROD (Windows 2003 Server) e no meu antigo XP/IIS 5.1 tudo funciona perfeitamente.

Uma página que normalmente leva de 1 a 2 segundos para carregar está demorando 8 segundos!!!

Eu vi esta postagem no fórum do IIS.Diz algo sobre o Vista/7 não agrupar conexões (só para você saber, o site está sendo executado localmente, mas está se conectando a um SQL Server 2005 hospedado em um servidor remoto).

Parece que demora um pouco para "começar a carregar" a página...Quer dizer, clico em atualizar e fica por vários segundos "Aguardando localhost"...Então quando recebe resposta ele carrega a página inteira normalmente...

Não tenho ideia de como forçar o Win7/IIS7.5 a agrupar conexões de banco de dados.

EDITAR: Criei um novo aplicativo Web ASP.NET vazio para ver se os problemas também acontecem.A resposta é não, ele responde rápido como deveria com uma página padrão vazia.Talvez seja algo relacionado à conexão do banco de dados.Farei mais um teste.Deveria ser uma maneira de consertar isso...

EDITAR 2: Depurando o app notei que o atraso ocorre APÓS a execução do código .NET (Page_Load, etc)...portanto, o atraso parece estar em algum lugar quando o IIS entrega a página ao navegador.

Foi útil?

Solução

Para aqueles que têm o mesmo problema, aqui estão duas soluções possíveis.

  • 1) Desativando o suporte IPv6 no Firefox (apenas para Firefox)

A maioria dos autores que descobri sugerem essa abordagem como a solução mais rápida e limpa.O que você precisa fazer é basicamente abrir as configurações no Firefox (about:config) e alterar a configuração network.dns.disableIPv6 para true.

  • 2) Altere as configurações do localhost no seu arquivo hosts (todos os navegadores)

Isso me veio como uma ideia para verificar onde e como posso interferir nas configurações de IPv6 da minha máquina.Eu vi um dos comentários nas fontes mencionadas acima dizendo que é possível se livrar do problema simplesmente substituindo localhost pelo nome da máquina na URL.

Não demorei muito para verificar e ver que desabilitar minha pesquisa de host local IPv6 faz a mesma coisa que desabilitar IPv6 diretamente no Firefox.

O que você precisa fazer é basicamente comentar/excluir esta linha específica em seu arquivo hosts:

#::1             localhost

Observação:A notação ::1 é equivalente em IPv6 ao endereço de pesquisa IPv4 127.0.0.1.

Acredito que a segunda solução possa ser mais adequada para usuários que não desejam desabilitar o IPv6 em geral, e a primeira para todos os outros que ainda não utilizam o IPv6 em seu trabalho regular.

Outras dicas

Eu estava tendo o mesmo problema: o desempenho extremamente lento do site, usando o IIS 7.5 no Windows 7 de 64 bits com uma dupla do Core 2 com 4 GB de RAM e 3 processos de pool de aplicativos executando apenas 1 site. Aqui está o que eu fiz para recuperar a velocidade do IIS, o problema resolvido ...

O truque para mim foi executar o IIS usando trabalhadores de 32 bits, conforme instruído pela Microsoft no iis.net, que você pode ler aqui:

http://learn.iis.net/page.aspx/201/32-bit-mode-worker-processs/

Solução simples fornecida (não quero reescrevê-lo aqui) ... ou você pode executar um comando de 1 linha no prompt de comando do Windows ou um comando de 1 linha do Windows PowerShell. Acabei de executá-lo na linha de comando (certifique-se de abrir a linha de comando ou o PowerShell como administrador-clique com o botão direito do mouse> execute como administrador).

Obrigado Marty McGee

Você pode tentar executar vários processos como pools de aplicativos:

  • Aberto IIS
  • Clique em pools de aplicativos
  • Clique com o botão direito do mouse no pool de aplicativos para o seu aplicativo e clique em Configurações avançadas
  • Encontre os "processos máximos do trabalhador" e atualize -o para 3 (ou o número de processos que você deseja permitir).

Eu sei que o OP estava executando o IIS 7.5 e isso pode não se aplicar a ele, mas estou postando isso, pois pode ajudar outras pessoas a correr IIS Express 8.0. Eu tive o mesmo problema e nenhuma das alterações de arquivo IPv6 ou hosts funcionou para mim. Meu projeto ASP.NET MVC4 ficou muito lento depois de atingir o F5 para atualizar as mudanças no JS no host. Estava acontecendo em todos os navegadores - Chrome, FF e IE. Eventualmente, descobri que o IIS Express 8.0 é extremamente lento ao servir arquivos JS e parece ser um bug. Se eu executasse o iesexpress na linha de comando e atingir F5, pude ver que cada arquivo JS levou 4 ou 5 segundos para carregar.

Acabei desinstalando o IIS 8.0 e instalando o IIS Express 7.5 e imediatamente o problema foi corrigido. Aqui estão as etapas que segui:

O IIS Express 8.0 parece estar instalado com o VS 2012, por isso, se você tiver uma nova instalação ou possivelmente uma atualização do serviço de serviço, isso poderá atualizar a versão anterior do IIS Express.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top