What You’ll Learn:


1. JVM Memory Model Recap

Memory Area Role
Heap Objects (young, old gen)
Stack Method calls, local variables
Metaspace Class metadata
Direct Memory NIO buffers, off-heap (e.g. Netty)

2. Key JVM Tuning Flags

Flag Purpose
-Xms512m Initial heap size
-Xmx2g Max heap size
-Xss1m Thread stack size
-XX:+UseG1GC Use G1 GC
-XX:+HeapDumpOnOutOfMemoryError Dumps heap for debugging
-XX:+PrintGCDetails Print GC logs
-XX:+UnlockExperimentalVMOptions Enables ZGC, Shenandoah

Sample Command:

java -Xms512m -Xmx2g -XX:+UseG1GC -XX:+PrintGCDetails -jar myapp.jar


3. Analyzing GC Behavior

Tools:

Common Issues: