Inicialização do ASP.NET

Eu estou tentando determinar a causa de uma inicialização inicial muito longa (imho) de um aplicativo ASP.NET.

O aplicativo usa várias bibliotecas de terceiros e muitas referências que, tenho certeza, podem ser consolidadas. No entanto, estou tentando identificar (e atribuir culpas) as dlls e o quanto elas contribuem para o processo de inicialização estendido.

Até agora, os tempos de inicialização variam de 2 a 5 minutos, dependendo do uso de outras coisas na caixa. Isso é inaceitável na minha opinião com base na complexidade do site, e eu preciso reduzir isso para algo na região de 30 segundos no máximo.

Para ser claro sobre o escopo do desempenho que estou procurando, é o tempo desde a primeira solicitação até o método Application_Start inicial que está sendo atingido.

Então, onde eu começaria com a obtenção de informações sobre quais DLLs são carregadas e quanto tempo demoram para carregar para que eu possa tentar colocar um custo / benefício juntos em que precisamos lidar / consolidar.

Do ponto de vista da habilidade, eu tenho usado o JetBrains dotTrace por um tempo, e estou claro sobre como benchmark o aplicativo, uma vez que estamos no aplicativo, mas parece que isso está fora do código do aplicativo e, portanto, fora do que Atualmente sei.

O que eu estou procurando é metodologias sobre como obter visibilidade do que está acontecendo antes do primeiro ponto de entrada no meu código.

Nota: Eu sei que posso chamar a página padrão em recycle / upgrade para fazer uma carga inicial, mas prefiro resolver o problema real em vez de passar o papel por cima dele.

Nota 2: o hardware é mais do que suficientemente dimensionado e separado em termos de funcionalidade, por isso tenho quase a certeza que este não é o problema.

questionAnswers(4)

yourAnswerToTheQuestion