DependencyTrack / DependencyTrack/dependency-track

Investigate switching to Generational ZGC

Open
#6,192 0 comments 1 reaction 0 assignees View on GitHub
enhancement p3 performance size/M
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.