O IIS no host local é muito lento

6

Estou usando o IIS7 na CPU dual core do Windows Vista. A primeira vez que acesse um serviço WCF ou um formulário da Web do ASP.NET às vezes demora mais de um minuto, o que não é realmente aceitável para mim.

Configurei o aplicativo para usar o pool de aplicativos .NET clássico e tentei jogar com o Máximo de processos de trabalho , primeiro definindo-o como 4, mas retornando a 1, pois ele não tinha o resultado esperado . Há outras coisas que eu possa tentar?

    
por Nyla Pareska 31.12.2009 / 11:41

4 respostas

8

Verifique seu arquivo web.config para o modo de compilação. Enquanto você está desenvolvendo, você deve executar seu site no modo de depuração. Se você estiver executando no modo de liberação, todos os aspx e ascx serão compilados em montagens temporárias, não apenas as páginas e os controles que você pressionar. Além disso, defina o lote como falso.

<configuration>
    <system.web>
         <compilation debug="true" batch="false" ...>
         ...
         </compilation>
    ...
    </system.web>
    ...

Claro, isso não é recomendado para ambientes de produção, o que será retardado por essas alterações.

Além disso, verifique este tópico do fórum , onde você pode encontrar algumas dicas interessantes, como redefinir as permissões do Pasta de arquivos temporários do ASP.NET:

I had the same problem and made all of the adjustments as mentioned in this forum but it didn't help. I began to suspect that the slow loading time of the dlls had to do with security settings. It appears that access to the dlls goes through security checking that is part of the operating system and not part of VIsual Studio. The dlls are located in a directory for your application under:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\

In order to speed up the security checking, you need to remove all of the security settings on the root folder of your application in the above mentioned directory, or on the directory "Temporary ASP.NET Files" if you want to have it apply to all web applications you develop.

You right mouse click the folder and select Properties -> Security

Remove all users and groups. Some will not be allowed to be removed because they inherit their permissions from their parent folder. You must first remove the inheritance by clicking on the Advanced button and then uncheck the "Inherit from parent..." checkbox. Then remove the user or group. There must not be any users or groups where the checkboxes for their permissions are greyed out. If they are greyed out, it means that you didn't remove the inheritance from their parent.

After you have removed all users and groups from the folder, you then need to add the following users and groups:

Administrators Users ASPNET Network Network Service Local Service

Give each of these accounts full permission. Click on the Advanced button again and check off the "Replace permission entries on all child objects..."

    
por 01.01.2010 / 14:57
2

Isso pode ser tão simples quanto um problema de DNS. Tente usar 127.0.0.1 em vez de localhost ao acessar. Se isso funcionar, basta adicionar um 127.0.0.1 ao seu arquivo de hosts e / ou sempre acessar via seu IP localhost.

    
por 01.01.2010 / 17:59
0

Esta é apenas a primeira vez que você acessa um aplicativo depois que ele é criado? Isso não é incomum, já que o aplicativo da Web precisa compilar coisas das DLLs etc. e será mais rápido nas cargas subseqüentes.

    
por 01.01.2010 / 13:47
0

Se isso estiver acontecendo na inicialização do aplicativo, desligue o tempo limite ocioso configuração deve ajudar, pelo menos até você reiniciar ou o IIS for reiniciado por algum outro motivo. Isso ainda deixaria uma questão de por que seu aplicativo está demorando tanto para começar.

    
por 01.01.2010 / 14:36