With JDK 15 going GA, the shenandoah GC would prove useful for services such as Kafka 🙂
why? Wouldn't it depend on your usage profile?
Yes
From my reading of Oracle's docs, Parallel GC is optimized for throughput, G1 is optimized for responsiveness
If responsiveness is #1 priority then ZGC is optimal
where does Shenandoah fit in?
Shenandoah is little bit of both, it can collect in parallel in threads that are not active and be very responsive. It's actually quite impressive GC.