Eu tenho um aplicativo Web ASP.NET (v4.0) instalado em um diretório virtual (como um aplicativo) e hospedado em seu próprio pool de aplicativos. Isso é repetido para cada instância do aplicativo (por cliente).
Os pools de aplicativos estão no modo integrado (não clássico) e o LoadUserProfile está definido como true. Caso contrário, as configurações padrão.
Atualmente, cada instância possui sua própria cópia do código / configuração e sua própria pasta de dados (leitura / gravação básica de arquivo).
Uma instância deste aplicativo funciona bem (a operação usada para comparação leva ~ 4 segundos). Todas as outras instâncias são executadas lentamente (de 10 a 25 segundos para a mesma operação).
Se eu mover a instância mais lenta para o pool de aplicativos "mais rápido", essa instância ganha vida. Se eu mover a instância mais rápida para o pool de aplicativos mais lento, essa instância diminui para um rastreamento.
Os pools de aplicativos foram criados da mesma maneira inicialmente - manualmente. Mais tarde, usei a rotina de cópia do PowerShell para garantir uma cópia exata do pool de aplicativos mais rápido e ainda o mesmo comportamento. A comparação dos arquivos apppool.config mostra que eles são idênticos, exceto as atribuições de diretório virtual.
Não há recursos compartilhados bloqueados, pelo que sei, e testei o desligamento do pool de aplicativos com bom desempenho e a reinicialização ... lento ainda é lento e, quando reinicio esse pool de aplicativos (está carregado) por último) ainda é mais rápido ...