DependencyTrack / DependencyTrack/dependency-track
Investigate switching to Generational ZGC
- Dominant language
- Java
- Stars
- 4.2k
- Forks
- 811
- Avg merge
- 8h 39m
- Merged PRs (30d)
- 237
Description
### Current Behavior
We currently use the G1 garbage collector (default as of Java 21) for the API server and Hyades services.
Java 21 also introduced support for Generational ZGC, which looks very promising:
* https://inside.java/2023/11/28/gen-zgc-explainer/
* https://netflixtechblog.com/bending-pause-times-to-your-will-with-generational-zgc-256629c9386b
* https://dataintellect.com/blog/low-latency-java-optimisation-through-garbage-collector-tuning/
### Proposed Behavior
Investigate whether it makes sense for us to switch from G1 to Generational ZGC. Consider how that impacts the RAM requirements / recommendations.
### Checklist
- [X] I have read and understand the [contributing guidelines](https://github.com/DependencyTrack/hyades/blob/main/CONTRIBUTING.md#filing-issues)
- [X] I have checked the [existing issues](https://github.com/DependencyTrack/hyades/issues) for whether this enhancement was already requested
Contributor guide
Assessment
This issue has not been assessed yet.