Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Se você quiser criar aplicativos com ótimo desempenho, deverá projetar e planejar o desempenho da mesma forma que projetaria qualquer outro recurso do seu aplicativo. Você pode usar as ferramentas fornecidas pela Microsoft para medir o desempenho do aplicativo e, se necessário, fazer melhorias no uso da memória, na taxa de transferência de código e na capacidade de resposta. Este tópico lista as ferramentas de análise de desempenho que a Microsoft fornece e fornece links para outros tópicos que abordam o desempenho de áreas específicas do desenvolvimento de aplicativos.
Projetando e planejando o desempenho
Se você quiser um aplicativo de ótimo desempenho, deverá projetar o desempenho em seu aplicativo da mesma forma que projetaria qualquer outro recurso. Você deve determinar os cenários críticos de desempenho em seu aplicativo, definir metas de desempenho e medir o desempenho desses cenários de aplicativo com antecedência e frequência. Como cada aplicativo é diferente e tem caminhos de execução críticos ao desempenho diferentes, determinar esses caminhos antecipadamente e concentrar seus esforços permite que você maximize sua produtividade.
Você não precisa estar completamente familiarizado com sua plataforma de destino para criar um aplicativo de alto desempenho. No entanto, você deve desenvolver uma compreensão de quais partes da plataforma de destino são caras em termos de desempenho. Você pode fazer isso medindo o desempenho no início do processo de desenvolvimento.
Para determinar as áreas cruciais para o desempenho e estabelecer suas metas de desempenho, considere sempre a experiência do usuário. Tempo de inicialização e capacidade de resposta são duas áreas-chave que afetarão a percepção do usuário sobre seu aplicativo. Se o aplicativo usa muita memória, pode parecer lento para o usuário ou afetar outros aplicativos em execução no sistema ou, em alguns casos, pode falhar no processo de envio da Windows Store ou da Windows Phone Store. Além disso, se você determinar quais partes do código são executadas com mais frequência, verifique se essas partes do código estão bem otimizadas.
Analisando desempenho
Como parte de seu plano de desenvolvimento geral, defina pontos durante o desenvolvimento em que você medirá o desempenho do aplicativo e comparará os resultados com as metas definidas anteriormente. Meça seu aplicativo no ambiente e no hardware que você espera que seus usuários tenham. Ao analisar frequentemente o desempenho do aplicativo desde o início, você pode alterar decisões arquitetônicas que seriam caras para corrigir posteriormente no ciclo de desenvolvimento. As seções a seguir descrevem as ferramentas de desempenho que você pode usar para analisar seus aplicativos e discutir o rastreamento de eventos, que é usado por essas ferramentas.
Ferramentas de desempenho
Aqui estão algumas das ferramentas de desempenho que você pode usar com seus aplicativos do .NET Framework.
| Ferramenta | Descrição |
|---|---|
| Análise de desempenho do Visual Studio | Use para analisar o uso da CPU de seus aplicativos do .NET Framework que serão implantados em computadores que executam o sistema operacional Windows. Essa ferramenta está disponível no menu Depurar no Visual Studio depois que você abre um projeto. Para obter mais informações, consulte o Gerenciador de Desempenho. Nota: Use a Análise de Aplicativos do Windows Phone (consulte a próxima linha) ao direcionar aplicativos para Windows Phone. |
| Análise de aplicativos do Windows Phone | Use para analisar a CPU e a memória, a taxa de transferência de dados de rede, a capacidade de resposta do aplicativo e o consumo de bateria em seus aplicativos do Windows Phone. Essa ferramenta está disponível no menu Depurar para um projeto do Windows Phone no Visual Studio depois que você instala o SDK do Windows Phone. Para obter mais informações, consulte Perfilagem de aplicativos para Windows Phone 8. |
| PerfView | Use para identificar problemas de desempenho relacionados à CPU e à memória. Essa ferramenta utiliza o rastreamento de eventos para Windows (ETW) e as APIs de criação de perfil CLR para proporcionar investigações avançadas da memória e CPU, bem como fornecer informações sobre a coleta de lixo e a compilação JIT. Para obter mais informações sobre como usar o PerfView, consulte as postagens no blog. |
| Analisador de Desempenho do Windows | Use para determinar o desempenho geral do sistema, como o uso de memória e armazenamento do aplicativo quando vários aplicativos estiverem em execução no mesmo computador. Essa ferramenta está disponível no centro de download como parte do Kit de Avaliação e Implantação do Windows (ADK) para Windows 8. Para obter mais informações, consulte o Analisador de Desempenho do Windows. |
Rastreamento de eventos para Windows (ETW)
O ETW é uma técnica que permite obter informações de diagnóstico sobre a execução de código e é essencial para muitas das ferramentas de desempenho mencionadas anteriormente. O ETW cria logs quando eventos específicos são gerados por aplicativos .NET Framework e Windows. Com o ETW, você pode habilitar e desabilitar o registro em log dinamicamente, para que possa executar o rastreamento detalhado em um ambiente de produção sem reiniciar seu aplicativo. O .NET Framework oferece suporte para eventos ETW e o ETW é usado por muitas ferramentas de criação de perfil e desempenho para gerar dados de desempenho. Essas ferramentas geralmente habilitam e desabilitam eventos ETW, portanto, a familiaridade com elas é útil. Você pode usar eventos ETW específicos para coletar informações de desempenho sobre componentes específicos do seu aplicativo. Para obter mais informações sobre o suporte ao ETW no .NET Framework, consulte Eventos ETW no Tempo de Execução de Linguagem Comum e Eventos ETW na Biblioteca Paralela de Tarefas e PLINQ.
Desempenho por tipo de aplicativo
Cada tipo de aplicativo .NET Framework tem suas próprias práticas recomendadas, considerações e ferramentas para avaliar o desempenho. A tabela a seguir é vinculada a tópicos de desempenho para tipos de aplicativo específicos do .NET Framework.
| Tipo de aplicativo | Veja |
|---|---|
| Aplicativos do .NET Framework para todas as plataformas |
Coleta de lixo e desempenho Dicas de desempenho |
| Aplicativos da Windows 8.x Store escritos em C++, C#e Visual Basic | Práticas recomendadas de desempenho para aplicativos da Windows Store usando C++, C#e Visual Basic |
| Windows Presentation Foundation (WPF) | WPF Performance Suite |
| ASP.NET | Visão geral do desempenho do ASP.NET |
Tópicos relacionados
| Título | Descrição |
|---|---|
| Armazenamento em cache em aplicações do .NET Framework | Descreve técnicas para armazenar dados em cache para melhorar o desempenho em seu aplicativo. |
| Inicialização lenta | Descreve como inicializar objetos conforme necessário para melhorar o desempenho, especialmente na inicialização do aplicativo. |
| Confiabilidade | Fornece informações sobre como evitar exceções assíncronas em um ambiente de servidor. |
| Escrevendo aplicativos grandes e responsivos do .NET Framework | Fornece dicas de desempenho coletadas da reescrita dos compiladores C# e Visual Basic no código gerenciado e inclui vários exemplos reais do compilador C#. |