Temos cerca de 10 usuários que executam software de entrada de dados legado (DOS de 16 bits no Windows 98) em um servidor de arquivos Windows 2003. Os arquivos são acessados diretamente (ou seja, ele é executado como se fosse um aplicativo cliente com arquivos de rede sendo acessados constantemente, não como um aplicativo cliente/servidor).
Ultimamente, o desempenho deste aplicativo tem sido péssimo. 15 segundos para executar um pequeno relatório ou abrir uma nova tela. Mas quando olhamos para as métricas de desempenho do servidor, não parece haver nenhum problema. Baixo IOPS, sem espera média de disco, poucos bytes de leitura/gravação, quase 0% de uso de CPU, toneladas de RAM livre, etc. Examinamos todas as métricas e não vimos nada que parecesse remotamente próximo dos limites do servidor.
Estamos no processo de substituição do software, mas precisamos fazê-lo funcionar por mais um ano até que a transição seja concluída. Alguma ideia de como podemos determinar a origem dos problemas?
Responder1
Pelo meu comentário, descobri que se tratava de um problema de rede. Não tenho ideia do porquê, mas mover um usuário para um switch diferente resolveu o problema.
Responder2
O monitor de processos da Sysinternals (agora parte da Microsoft) fornecerá todas as informações que você precisa:
http://technet.microsoft.com/en-gb/sysinternals/bb896645
Basta executá-lo, antes de executar seu aplicativo, certifique-se de configurar os filtros e opções corretamente (isso produz uma grande quantidade de informações!) e depois relaxe enquanto seu aplicativo é executado e observe o que aparece no monitor enquanto o lento ocorre a descida.
Dado que você pode reproduzir seu cenário, após algumas execuções, você poderá ver o que está causando os problemas.
Existem outras ferramentas no site da Sysinternals que provavelmente também ajudarão você.