Hello Alex,
The settings you've applied look reasonable, but here are some additional tips to fine-tune it further:
1) Your application is suffering from long-running GC events. 76GC events took more than 5.0 seconds. Long running GCs are unfavorable for the application's performance. Please read this article to reduce long GC pauses.
2) Consider adjusting -XX:MaxGCPauseMillis=250. If you're experiencing frequent stop-the-world pauses, increase this value slightly to allow the collector more time to clean.
3) -XX:ConcGCThreads=2 and -XX:ParallelGCThreads=8 might need adjustment based on your workload and machine configuration. These settings control the number of concurrent GC threads and the number of parallel GC threads.
4) Increase -XX:G1NewSizePercent. By default, 5% of the heap is allocated to the young generation. Increase this to 20% or 30% to provide more space for short-lived objects before they are promoted to the old generation and potentially collected in full GCs.
5) Set -XX:G1MaxNewSizePercent. This parameter limits the maximum size of the young generation. Set it to a value slightly higher than -XX:G1NewSizePercent to prevent excessive young generation growth and trigger frequent GCs.
Edit your Comment