Che cosa può causare IISExpress byte privati ??continuare ad aumentare senza alcun cambiamento significativo nella heap gestito?

StackOverflow https://stackoverflow.com/questions/7810032

Domanda

Ho un 3 un'applicazione ASP.NET MVC che utilizza Windsor per l'iniezione di repository e sessioni di NHibernate. Oggi, per la prima volta, mi ha colpito un OutOfMemoryException. In un primo momento ho pensato che potrebbe essere perché non stava rilasciando una delle Transient oggetti che Windsor stava creando. Come un rapido esperimento, ho girato tutti quelli in stile di vita PerWebRequest, ma non sembra aver influito il modello di utilizzo della memoria in una grande strada -. Ha conservato la salendo

  • Non sto facendo alcun caching
  • non sto usando tutte le risorse non gestite
  • I am fare JSON serializzazione di diversi oggetti anonimi
  • L'azione che sto usando per lo stress test solo restituisce un oggetto JSON piccolo (32 byte), quindi non oggetti di grandi dimensioni sono coinvolti in qualsiasi

Che cosa potrebbe causare IISExpress byte privati ??per andare avanti quando la mia taglia heap gestito è stabile (verificato con Perfmon)?

Quale sarebbe lo strumento giusto per eseguire il debug di questo? Sto assumendo profiler CLR non può essere utile perché Perfmon non mostra alcuna perdita nel mucchio gestito.

È stato utile?

Soluzione

Memory usage seems to be stable after I disabled Glimpse.

I don't know what it could possibly be doing to leak unmanaged memory, but just setting on="false" in the Glimpse configuration section in web.config instantly makes the memory usage stable.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top