Práticas recomendadas de desempenho do ASP.NET
Autor:Eve Cole
Data da Última Atualização:2009-06-30 16:04:02
Organize recomendações de práticas de design lógico/físico com base no webcast do MSDN: use páginas de modelo lógico de três camadas (.aspx) e controles de usuário (.ascs)
Tipos reutilizáveis (componentes) são colocados no diretório bin Os dados são colocados em um banco de dados SQL. Recomendado: Design para Web Farm.
Recomendações de estado da sessão do Web Farm: Usar o mesmo processo deve evitar (quando possível):
Chamadas síncronas para serviços Web XML usando serviços Web XML por meio de chamadas remotas por meio de DCOM:
A comunicação entre aplicativos na Internet não deve ser usada para comunicação intra-aplicativo. Recomendação: Use o ISA Server quando uma zona de segurança DMZ for necessária:
Permitir acesso somente via ISA
Túnel ISA através de DMZ para ASP.NET
Reduza as recomendações de linguagem/código de troca de processos para evitar o uso de vinculação tardia
<%@ Page Language = "VB" Explicit = "true" %> requer declaração de todos os tipos de variáveis e ainda permite ligação tardia
<%@ Page Language = "VB" strict = "true" %>Proíbe o uso de qualquer ligação tardia
Recomenda-se usar COM o mínimo possível para interação COM, e para usar dados de componentes gerenciados é recomendado armazenar os dados no SQL Server e escolher o método de acesso de dados apropriado: OLEDB/SQL client/ODBC
Escolha razoavelmente DataSet e DataReader para gerenciamento de estado de acesso a dados e escolha a maneira apropriada de armazenar Sessão: Inproc/StateServer/database
Use tipos de dados simples para evitar salvar objetos COM do STA na Sessão. Se a Sessão não for necessária, desative-a: EnableSessionState = "false".
Se possível, use o atributo readonly: EnableSessionState = "Readonly"
Se o ViewState não for necessário, desative-o, EnableViewState = false
Minimize os dados no ViewState Visualize o tamanho do ViewState Visualize o código-fonte da saída HTML ou ative o Trace
Usar Cache Cache de Página Cache de Página Parcial
Cache de dados do objeto de cache
Método de cache do WebService para quantificar o desempenho da WEB: Tempo de resposta da taxa de transferência da máquina Testado carregando o servidor Usando várias máquinas clientes para carregar gratuitamente o estresse do aplicativo Web da Microsoft
Teste vários cenários para simular a passagem do cenário ponta a ponta do site. Teste os valores de solicitação/sexo sob diferentes cargas (100, 250, 500, 750, 1000, etc.). clientes visitando ao mesmo tempo)
Identifica a carga máxima do cliente dentro do tempo de resposta TTFB/TTLB aceitável Contadores de desempenho críticos Processador,% de utilização da CPU || Valores baixos = exposição ou contenção de bloqueio
ASP.NET, número de solicitações enfileiradas || Crescimento linear significa que o servidor está totalmente carregado
Aplicativo ASP.NET, solicitações por segundo || Taxa de transferência dinâmica (deve ser consistente)
Aplicação ASP.NET, número total de erros || Indica erros funcionais (deve ser 0)
Aplicativo ASP.NET, reinicialização do processo de trabalho || Indica um erro funcional sério