Estoy probando el rendimiento de la memoria caché de la aplicación. Para hacer esto, desde mi máquina local, estoy presionando el host de caché en la LAN. Este host de caché se ejecuta en Windows Server 2008 y, salvo en lo esencial, no tiene nada instalado. Tiene 8 gigas de RAM. También es un servidor virtual VMware,C# memory leak?
Tan pronto como toco el host de caché, puedo ver que la memoria utilizada aumenta. Pero algo muy sospechoso está sucediendo en alguna parte. el total de bytes de datos primarios que se utilizan es 1.5 Gigs. El tamaño del objeto es 1.744 bytes (usando el generador de perfiles ANTS). El número total de objetos es 2.521.451. He desactivado el desalojo. Pero, esto es interesante, tan pronto como el servidor alcanza el estado de aceleración, puedo ver que la RAM del servidor se está utilizando en 7.72 Gigs, pero aparte de la memoria caché distribuida que usa 1.8 gigs, no hay otra aplicación que use una cantidad tan alta de RAM.
Estoy utilizando Visual Studio 2010, y Estoy insertando y la lectura de los objetos en paralelo
La pregunta que quería hacer es:
dónde va mi memoria? El servidor en el estado acelerado dice que estoy usando 7.72 gigas de la memoria asignada mientras que en el administrador de tareas, puedo ver que apenas 3 Gigs están siendo utilizados (si agrego toda la memoria del proceso en ejecución)
¿Está ejecutando VS en el servidor? ¿Y cuánta memoria está siendo utilizada antes de comenzar/después de detener su aplicación? –
¿De qué columnas provienen los números de uso de memoria? Porque 2,521,451 objetos con 1744 bytes de tiempo dan 4GB. – Gabe
No es realmente una respuesta directa, pero dado que está utilizando esta cantidad de datos, que podría estar interesado en un serializador más eficiente (y gratis). Déjame saber si es así ... –