Pergunta

Em um ambiente de produção, como se pode descobrir que Asp.Net http solicitações, seja aspx ou asmx ou costume, estão fazendo com que a pressão mais memória dentro de um processo w3wp.exe? Eu faço vazamentos de memória não significa aqui. É uma boa aplicação saudável que dispõe de tudo é objetos muito bem. geracional GC da Microsoft faz o trabalho bem. Alguns pedidos no entanto, causa o processo w3wp a crescer a sua pegada de memória consideravelmente, mas apenas para a duração da solicitação.

É simplesmente uma questão do custo-eficiência e escalabilidade de um ambiente de produção para um aplicativo SAAS, a fim de apresentar regularmente relatórios de volta para o departamento de desenvolvimento em seus hogging memória "páginas" a maioria, para retornar a pressão (memória) onde ele pertence , por assim dizer.

Há não parece ser qualquer coisa como:
HttpContext.Request.PeakPrivateBytes ou .CurrentPrivateBytes
ou
Session.PeakPrivateBytes

Foi útil?

Solução

Você pode querer usar uma ferramenta como o Monitor de desempenho para monitorar o "Processo \ Conjunto de trabalho" para o processo de W3WP.exe e gravá-lo para um banco de dados. Você, então, poderia poderia correlacioná-la aos registos de HTTP para o IIS Server.

Ela ajuda a ter tanto os dados Perfmon e HTTP registra tanto a escrita para um banco de dados SQL. Então você pode usar T-SQL para abrir páginas solicitadas por data / hora em torno do tempo da pressão de memória observada. Use a função DatePart para construir um Data / Hora arredondado para a precisão desejada de segundos ou minutos, conforme necessário.

Espero que isso ajude.

Obrigado, -Glenn

Outras dicas

Se você estiver usando o estado da sessão InProc, todos os dados a sessão é armazenado na memória do w3wp, e pode ser a causa do mesmo crescendo.

Eu não me preocuparia com isso. Pode ser que a GC está acontecendo durante o pedido, e o CLR está alocando memória para mudar as coisas ao redor. Ou poderia ser alguma outra coisa manutenção periódica que vem junto com ASPNET.

A menos que você está preparado para ir espeleologia com a análise contador perf de geração de 0,1,2 eventos GC, e etc, então eu não me preocuparia com resolver este "problema".

E isso não soa como se fosse um problema de qualquer maneira -. Apenas uma coisa curiosidade

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top