| layout | default |
|---|---|
| title | Home |
Optimizing Java Workloads on OpenShift & Kubernetes — 9 live demos, 54 slides, real metrics and honest benchmark results.
All demos run with ./demo.sh using Podman and Red Hat UBI images.
UseContainerSupport + MaxRAMPercentage vs hardcoded -Xmx. Live jcmd output and OOMKill simulation.
Quarkus + Micrometer + Grafana LGTM. Live GC pause histograms. G1GC vs ZGC side-by-side.
Quarkus ~5% vs Spring Boot ~40% improvement. One property. The honest comparison.
609ms → 148ms (−75%) startup on JDK 25 LTS. One property, one Maven command.
One Quarkus app, REST on :8080 and gRPC on :9000. Streaming benchmark + honest localhost caveat.
Same code, same heap. GC pause delta measured live under load. ZGC throughput caveat explained.
Pure Python. 4 nodes → 2 nodes, $560/month saving, 17× ROI. No cluster needed.
Foreign Function & Memory API calling native C++20 library. No JNI, no wrappers, Arena safety.
MiniLM-L6-v2 in-process via Panama. Semantic search + incident classification. No Python sidecar.
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.