Mi aplicación muestra un aumento en el tamaño de 'Antigua generación'/'Generación sostenida', y cuando alcanza el límite máximo para 'Vieja generación', de repente aumenta el tamaño de PermGen. Éstos son mis aprestos generación:Java HotSpot 1.6 VM, recolección de basura - Scary PermGen
-Xmx1200m -Xms1200m -Xmn450m -XX:MaxPermSize=600m -XX:+UseParallelGC
Esto está en Fedora 32 bits por lo que no puede tener un montón más grande que esto.
La aplicación no está haciendo una carga de clases sofisticada, aunque está utilizando Spring IOC e Hibernate, Spring App-context.xml define unos 1000 Beans.
Esta aplicación comienza con 175MB PermGen, que aumenta constantemente a ~ 250MB en pocas horas, se mantiene así hasta que la generación sostenida alcanza ~ 780 MB, luego permgen salta a ~ 500MB mientras que Old Gen cae a ~ 500MB.
Esto me obliga a reiniciar la aplicación todos los días, y me da un susto real de error OutOfMemory que se avecina. Cualquier idea sería muy útil.
Gracias Gala101
13/May: ¿Podría alguien arrojar luz sobre lo que sucede cuando 'Old Gen' es el recolector de basura?
¿El jvm pone colecciones de 'Old Gen' en PermGen?
Mi espiga PermGen solo aparece cuando la recolección se realiza desde 'Old Gen', también la disminución en el tamaño de OldGen coincide estrechamente con el aumento en el tamaño de PermGen.
PD: No hago ningún despliegue/desaplicación en vivo, ya que de seguro se comerá PermGen.
A continuación se muestra un spanshot actual de mi página de monitorización: (la parte comprometida acababa de saltar desde ~ 250 MB a 500 MB)
PS Perm Gen
Type Non-heap memory
Usage init = 16777216(16384K) used = 254453736(248489K) committed = 504954880(493120K) max = 629145600(614400K)
Peak Usage init = 16777216(16384K) used = 254453736(248489K) committed = 504954880(493120K) max = 629145600(614400K)
Collection Usage init = 16777216(16384K) used = 252421536(246505K) committed = 504954880(493120K) max = 629145600(614400K)
Por lo que yo sé la MaxPermSize no puede contener más de 256 ... –
@Bozhidar: No es cierto, el tamaño PermGen puede ser mucho mayor que el – skaffman