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][]