update descargar como jvm java-8 metaspace

jvm - descargar - Java 8: ¿Por qué aumenta el tamaño de Metaspace pero el número de clases cargadas permanece igual?



java 8 update 51 (2)

En nuestra aplicación que se ejecuta en Jdk 8, usamos VisualVM para rastrear el uso de las clases cargadas y el uso del metaspacio.

En algún momento, mientras nuestra aplicación se está ejecutando, vemos que la cantidad de clases cargadas ya no aumenta, pero el metaespacio aumenta en tamaño mientras nuestro programa se está ejecutando. Entonces, ¿qué más, aparte de las clases, se almacena en el metacespacio, que podría causar eso?


Mientras se ejecuta su programa, algunas partes de su código pueden ser determinadas como "calientes" por el compilador JIT de HotSpot. Esto hará que esas partes se transformen / compilen a código nativo, y también algún otro código puede estar insertado en él. Esta representación de código nativo tiene que ir a algún lugar, y va al mismo lugar que otros metadatos de clase: el Metaspace.

Explica el crecimiento continuo que está viendo: las partes calientes se determinan a lo largo del tiempo utilizando una métrica simple de la cantidad de veces que se ejecutó esa pieza de código. Con el tiempo, más y más piezas de código serán JIT''ed, ya que alcanzarán el umbral establecido por -XX:CompileThreshold (por defecto a 10000)


No estoy seguro, pero hier ( http://java.dzone.com/articles/java-8-permgen-metaspace ) Financiado esto

La recolección de basura de las clases muertas y los cargadores de clases se activa una vez que el uso de metadatos de la clase alcanza el "MaxMetaspaceSize".

tal vez es esta la causa para aumentar el tamaño del metaspacio.