7. What garbage collectors are supported?
All standard Java garbage collectors supported (JMX MBeans consistent across GC types):
Serial GC (-XX:+UseSerialGC):
- Single-threaded GC, suitable for small apps (<100 MB heap), dev/testing only
- MBeans:
Copy(Young Gen),MarkSweepCompact(Old Gen)
Parallel GC (-XX:+UseParallelGC, default Java 8):
- Multi-threaded GC, suitable for throughput-focused apps, batch processing
- MBeans:
PS Scavenge(Young Gen),PS MarkSweep(Old Gen)
CMS - Concurrent Mark Sweep (-XX:+UseConcMarkSweepGC, deprecated Java 9+):
- Low-latency GC, minimizes pause times, suitable for real-time apps
- MBeans:
ParNew(Young Gen),ConcurrentMarkSweep(Old Gen)
G1 - Garbage First (-XX:+UseG1GC, default Java 9+):
- Balanced GC (throughput + low latency), suitable for large heaps (>4 GB), most Spring Boot apps
- MBeans:
G1 Young Generation,G1 Old Generation - Recommended for Boomi Atoms (handles variable message sizes well, predictable pause times)
ZGC - Z Garbage Collector (-XX:+UseZGC, Java 11+):
- Ultra-low latency GC (<10ms pauses), suitable for very large heaps (100 GB+), requires Java 11+
- MBeans:
ZGC Pauses,ZGC Cycles
Shenandoah (-XX:+UseShenandoahGC, Java 12+):
- Low-latency GC similar to ZGC, suitable for large heaps, requires Java 12+
Nodinite monitoring: Automatically detects GC type via MBean names, displays GC-specific metrics (Young Gen collections for G1, Full GC frequency for CMS, pause times for ZGC). Threshold configuration generic (collections/minute, pause time milliseconds) works across all GC types.
Related Questions
See all FAQs: [Troubleshooting Overview][]