Skip to content

Latest commit

 

History

History
137 lines (131 loc) · 7.41 KB

File metadata and controls

137 lines (131 loc) · 7.41 KB
layout default
title Home

Taming the JVM

Optimizing Java Workloads on OpenShift & Kubernetes — 9 live demos, 54 slides, real metrics and honest benchmark results.

Quarkus 3.33.1 LTS Java 21 & 25 G1GC / ZGC / Shenandoah Project Leyden Panama FFM ONNX Runtime OpenShift Podman
9
Live Demos
54
Slides
−75%
Startup (Leyden)
$80k+
Annual Savings Shown
<1ms
ZGC Pause Target

Demos

All demos run with ./demo.sh using Podman and Red Hat UBI images.

Demo 01 · Core

UseContainerSupport + MaxRAMPercentage vs hardcoded -Xmx. Live jcmd output and OOMKill simulation.

Java 21⏱ ~5 min
Demo 02 · Core

Quarkus + Micrometer + Grafana LGTM. Live GC pause histograms. G1GC vs ZGC side-by-side.

Quarkus 3.33.1⏱ ~10 min
Demo 03 · Core

Quarkus ~5% vs Spring Boot ~40% improvement. One property. The honest comparison.

Quarkus + Spring Boot⏱ ~8 min
Demo 04 · Bonus

609ms → 148ms (−75%) startup on JDK 25 LTS. One property, one Maven command.

JDK 25⏱ ~12 min
Demo 05 · Bonus

One Quarkus app, REST on :8080 and gRPC on :9000. Streaming benchmark + honest localhost caveat.

Quarkus 3.33.1⏱ ~10 min
Demo 06 · Bonus

Same code, same heap. GC pause delta measured live under load. ZGC throughput caveat explained.

Quarkus 3.33.1⏱ ~10 min
Demo 07 · Bonus

Pure Python. 4 nodes → 2 nodes, $560/month saving, 17× ROI. No cluster needed.

No cluster needed⏱ ~3 min
Demo 08 · Bonus

Foreign Function & Memory API calling native C++20 library. No JNI, no wrappers, Arena safety.

JDK 25⏱ ~8 min
Demo 09 · Bonus

MiniLM-L6-v2 in-process via Panama. Semantic search + incident classification. No Python sidecar.

JDK 25⏱ ~10 min

Reference Docs

Cheat sheets, configuration references, and presenter guides.

📋

Container images, GC flags, AppCDS, Leyden, Micrometer, gRPC, Panama FFM — full config reference.

Heap flags, GC decision tree, thread counts, right-sizing formula, startup ladder, Podman gotchas — quick reference.

♻️

Why UBI9 defaults to Shenandoah, how Brooks pointers work, three-way comparison with G1GC and ZGC.

🎤

Slide-by-slide notes for all 54 slides, timing reference, demo troubleshooting, prep checklist.

🔧

Podman, SDKMAN, JDK 21 & 25, hey, grpcurl, ghz — complete install guide for both platforms.

📐

10 architecture and flow diagrams — interactive viewer, speaker notes, and download links.