Hacky & Tipy
Java JVM tuning: cheat sheet
JVM tuning může dramaticky zlepšit výkon. Praktický cheat sheet.
Paměť
-Xms4g -Xmx4g
-XX:MaxMetaspaceSize=512m
-XX:MaxMetaspaceSize=512m
Garbage Collectory
-XX:+UseG1GC
-XX:+UseZGC # Java 17+
-XX:+UseShenandoahGC
-XX:+UseZGC # Java 17+
-XX:+UseShenandoahGC
GC logging
-Xlog:gc*:file=gc.log:time,uptime
JFR
jcmd <pid> JFR.start duration=60s filename=recording.jfr
Diagnostika
jstack <pid> # thread dump
jmap -dump:live,format=b,file=heap.hprof <pid>
-XX:+HeapDumpOnOutOfMemoryError
jmap -dump:live,format=b,file=heap.hprof <pid>
-XX:+HeapDumpOnOutOfMemoryError
Kontejnery
-XX:MaxRAMPercentage=75.0
Pravidla
- Heap = 50-75% RAM
- Xms = Xmx
- G1GC pro většinu workloadů
- ZGC pro ultra-low latency
Tip
Vždy měřte před a po změně. JFR je nejlepší nástroj pro Java performance analýzu.