A JVM threading model for the containerized times
summary
An adaptive threading model called navu continuously measures fine‑grain CPU behavior (histograms sampled every 100 ms) and uses a control loop plus configurable maximum‑queuing‑delay load‑shedding to throttle concurrency, reject excess work, and avoid CPU throttling and GC pauses. It automatically shrinks or grows thread pools, records surprising diagnostics (P99 CPU spikes tied to costly dev-only ops), restores stability and latency, and yields measurable wins at Nubank — including cost cuts and a reported 99.9% availability for PX.
AI-written summary · about
chapters (11)
- 0:00JVM threading challenge
- 3:22Crash resolution paradox
- 5:45System instability goals
- 10:18CPU throttling issue
- 12:50CPU metrics danger
- 14:40Fine-grained CPU monitoring
- 16:05NAVU adaptive threading model
- 19:16NAVU concurrency control
- 24:58NAVU adoption results
- 27:51NAVU future plans
- 29:56Conclusion & Q&A
related talks
07mBest Practices with JVMs in Containers
46mJava in a container: operational specifics
42mWhen the OS gets in the way
52mBulletproof Java Enterprise Applications for The Hard Production Life
01h 02mJourney to Cloud : Leave No Java Workload Behind
50mPerformance: Avoiding Pitfalls, Diagnosing Issues & Scaling for Growth
37m73,000 Pods a Day, Lessons From Misadventures In Multi-Tenant
18mLet the machines optimize the machines
