A Glance At The Java Performance Toolbox
summary
Shows how to build tiny container runtimes with jlink and jdeps, then runs a Spring Boot to‑do app under Docker Compose and uses jcmd, jmap, jstat to capture native memory baselines, heap dumps and GC traces; demonstrates enabling Native Memory Tracking (costly) and producing a heap dump for offline analysis, and wires JDK Flight Recorder via JFR streaming into Prometheus/Grafana. JFR adds ~1% overhead when streaming; a reproducible memory leak appears after ~1,000,000 inserts.
AI-written summary · about
chapters (10)
- 0:00Talk overview
- 1:52Minimal Java container images
- 5:24Custom JREs with jlink
- 11:00Native and heap memory monitoring
- 14:07Spring Boot with Prometheus and Grafana
- 24:29JVM events with JDK Flight Recorder
- 33:52Custom JFR events for insights
- 36:37OpenJDK tool availability
- 38:05Tools on Kubernetes pods
- 39:54Q&A
related talks
43mA Glance At The Java Performance Toolbox
44mA Glance At The Java Performance Toolbox
49mJava and Containers Make it Awesome
47mLegal JVM Doping in Your Containers
48mJava in Containers - Part Deux
31mFast and Distroless Java in Containers: the Recipe!
01h 01mDistilling Java Containers for Kubernetes
51mThe Power of JDK Flight Recorder: Efficient Profiling and Troubleshooting for Java Applications
