O IIS 7.5 não armazena em cache a DLL de terceiros em reciclagem?

1

Eu tenho um problema muito chato.
Eu tenho um aplicativo (.net 3. 5) em execução no IIS7.5.
Normalmente, quando eu reciclar um aplicativo, leva algum tempo na primeira vez que você navega no aplicativo. Estou acostumado com esse comportamento, então não me importo. Eu acho que o IIS, em seguida, armazena em cache as dll necessárias dentro do aplicativo, não?
Bem, eu tenho um aplicativo que é executado no IIS7.5 que não mostra esse comportamento. Na verdade, quando eu recicle meu aplicativo, a primeira página é carregada muito rápido (menos de um segundo). O mesmo acontece com todas as páginas do aplicativo, exceto uma.
Depois de alguma pesquisa (cerca de 2 dias), descobri que é devido a uma dll particular de terceiros que aparentemente não é armazenada em cache na primeira carga do aplicativo. Então, a primeira vez que eu navego para esta página particular que dll (17 mb big) é carregado, o que naturalmente leva algum tempo (o tempo geralmente necessário na primeira carga). Após essa primeira vez que a página está indo muito rápido, é realmente o carregamento dessa dll que causa o problema de desempenho.

Como posso fazer o IIS 7.5 carregar todas as minhas dlls no início do aplicativo?

Espero ter explicado bem.

Para saber:

  • Servidor Windows 2008 (64 bits)
  • IIS 7.5
  • .NET 3.5
  • Ambiente virtual

Felicidades, M.

    
por user29964 25.08.2010 / 09:11

1 resposta

2

O .NET carrega dll's (ou assemblies como eles são mais conhecidos) preguiçosamente. Somente quando algo que precisa de uma montagem estiver prestes a ser executado, o conjunto será carregado.

Assim, se o assembly nunca é necessário, porque nada que o usa é chamado, ele nunca precisa ser carregado.

    
por 25.08.2010 / 09:36