Switch to CMS GC #133
By default, Java 8 uses Parallel GC. This is not desirable for streaming applications as it can lead to stop-the-world GC pauses which leads to unpredictable batch times.
For a streaming application, we want predictable times so that our events don't get backlogged. As such, using Concurrent Mark and Sweep GC is more suited since it is overall more expensive but has fewer large pauses.
You can read more about this topic here.