Puncte:0

JVM (lucee) Metaspațiul crește constant

drapel in

Am un server lucee (ColdFusion) în producție.

La început, am întâlnit epuizarea memoriei sistemului de operare. Am redus -Xmx2048m la jumătate din memoria disponibilă și setată -XX:MaxMetaspaceSize=1000m.

După un timp, tomcat-ul lui lucee a raportat erori OutOfMemory și a cerut o repornire.

Deoarece metaspațiul este în plus față de heap și implicit nu este limitat, acest lucru indică faptul că metaspațiul se umple.

Am adăugat apoi un obișnuit jcmd <pid> VM.metaspace pentru a verifica această presupunere. Dimineata am:

 totalul grămadă de gunoi primul 1572864K, utilizat 959885K [0x0000000080000000, 0x0000000100000000)
  dimensiunea regiunii 1024K, 249 tineri (254976K), 18 supraviețuitori (18432K)
 Metaspace folosit 99985K, capacitate 102839K, comisionat 104996K, rezervat 1114112K
  spațiu de clasă folosit 7301K, capacitate 8154K, angajat 8320K, rezervat 1015808K

iar seara:

 totalul deșeurilor de gunoi primul 1616896K, utilizat 556546K [0x0000000080000000, 0x0000000100000000)
  dimensiunea regiunii 1024K, 25 tineri (25600K), 5 supraviețuitori (5120K)
 Metaspațiu utilizat 108125K, capacitate 111035K, comisionat 113828K, rezervat 1122304K
  spațiu de clasă folosit 7509K, capacitate 8463K, angajat 8704K, rezervat 1015808K

Așadar, metaspațiul crește cu aproximativ 8Mb pe zi!

Am descoperit că JAXB a avut o problemă care cauzează acest comportament, așa că am încercat acea soluție prin adăugare -Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true dar nu a ajutat sau poate a înrăutățit situația.

Cum pot afla ce naiba îmi umple metaspațiul?

Puncte:0
drapel co

Încă nu am găsit o soluție la acest lucru, dar există un bilet deschis pentru asta. În prezent, trebuie să repornesc periodic serverul meu pentru a preveni un accident.

Te rog vezi

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

și

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

djdomi avatar
drapel za
Deși acest link poate răspunde la întrebare, este mai bine să includeți aici părțile esențiale ale răspunsului și să furnizați linkul pentru referință. Răspunsurile numai cu linkuri pot deveni invalide dacă pagina legată se modifică. - [Din recenzie](/review/late-answers/501900)

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.