1. Resources
2. Tuning
Allocation Breakdown
| Heap Memory (-Xmx) | 0 MiB |
| Metaspace | 0 MiB |
| JVM Overhead (Threads, GC) | 0 MiB |
| Safety Buffer | 0 MiB |
| Total Container Limit | 0 MiB |
Recommended JVM Flags
# Flags will appear here
💡 How to Use This Calculator
This tool helps you calculate safe JVM heap settings for
Docker and Kubernetes environments.
It prevents common issues like OOMKilled and unstable GC behavior.
-
Enter your Total Container Memory
(e.g. Kubernetes
resources.limits.memory). - Choose a Workload Profile to estimate JVM overhead correctly.
- Set Metaspace based on framework size (Spring, Hibernate, etc.).
- Click Calculate to get recommended JVM flags.
🧮 How the calculation works
The calculator splits container memory into:
- Heap – Your application objects (
-Xmx) - Metaspace – Class metadata
- JVM Overhead – Threads, GC, code cache
- Safety Buffer – Prevents container OOM kills
Heap ≠ Total Memory by design. Leaving headroom is critical for JVM stability inside containers.
🚀 How to use the generated flags
JAVA_OPTS="$(copied flags here)" java $JAVA_OPTS -jar app.jar
In Kubernetes, add these flags to:
JAVA_TOOL_OPTIONSJAVA_OPTS- Dockerfile
ENTRYPOINT
⚠️ Note: This tool calculates recommended values. Always validate under production load using metrics and GC logs.
