| 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) |
| 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
Tools:
PrintGCDetails, gc.log)Common Issues: