JVM (lucee) Metaspace aumenta constantemente

JVM (lucee) Metaspace aumenta constantemente

Tengo un servidor lucee (ColdFusion) en producción.

Al principio, nos encontramos con un agotamiento de la memoria del sistema operativo. Redujimos la -Xmx2048mmemoria disponible a la mitad y configuramos -XX:MaxMetaspaceSize=1000m.

Sin embargo, después de un tiempo, el gato de lucee informó errores de OutOfMemory y requirió un reinicio.

Dado que el metaespacio se suma al montón y, de forma predeterminada, no está limitado, esto indica que el metaespacio se está llenando.

Luego agregué un regular jcmd <pid> VM.metaspacepara verificar esta suposición. Por la mañana tengo:

 garbage-first heap   total 1572864K, used 959885K [0x0000000080000000, 0x0000000100000000)
  region size 1024K, 249 young (254976K), 18 survivors (18432K)
 Metaspace       used 99985K, capacity 102839K, committed 104996K, reserved 1114112K
  class space    used 7301K, capacity 8154K, committed 8320K, reserved 1015808K

y por la tarde:

 garbage-first heap   total 1616896K, used 556546K [0x0000000080000000, 0x0000000100000000)
  region size 1024K, 25 young (25600K), 5 survivors (5120K)
 Metaspace       used 108125K, capacity 111035K, committed 113828K, reserved 1122304K
  class space    used 7509K, capacity 8463K, committed 8704K, reserved 1015808K

¡Así que el metaespacio está creciendo aproximadamente 8 Mb por día!

Descubrí que JAXB tenía un problema que causaba este comportamiento, así que probé esa solución agregando -Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=truepero no ayudó o tal vez lo empeoró.

¿Cómo puedo saber qué diablos está llenando mi metaespacio?

Respuesta1

Todavía tengo que encontrar una solución a esto, pero hay un ticket abierto. Actualmente tengo que reiniciar mi servidor periódicamente para evitar una falla.

Por favor mira

https://luceeserver.atlassian.net/browse/LDEV-2904

y

https://dev.lucee.org/t/lucee-5-3-5-92-java-non-heap-memory-steadily-increases/6948/23

información relacionada