Tuning Large Scale Java Platforms
summary
Practical GC recipes target latency-sensitive JVMs from 4GB to 128GB using plain HotSpot with par new + CMS and advice to set -Xms = -Xmx; Young gen sits ~15–33% of heap and parallel GC threads track vCPUs. NUMA guidance sizes VMs to stay local (example: 96GB two-socket → ~45GB per VM, i.e. one JVM per NUMA node). Measured wins include consolidating 25 REST services (400 JVMs → 12 JVMs) for 3x faster responses and a 30%/60% improvement in another test comparing 4×1GB vs 2×2GB JVMs.
AI-written summary · about
chapters (20)
- 0:00Introduction and speakers
- 1:13Conference agenda overview
- 2:14Defining large scale Java platforms
- 9:38Role of a platform engineer
- 11:03Platform categories explained
- 17:05Sizing Java platforms step by step
- 21:45Memory structure and sizing basics
- 28:35NUMA architecture and sizing
- 35:21Garbage collection tuning introduction
- 36:45GC tuning deep dive
- 40:59Heap sizing and surviving memory
- 47:07Tuning Young and Old Generation
- 51:26Java 8 GC policies and WebSphere
- 52:35Microservices scaling case study
- 1:00:01Scale up vs scale out comparison
- 1:08:20New paradigm for microservices
- 1:11:12Monitoring and platform engineering
- 1:14:43Cloud Foundry platform demo
- 1:22:38Handling intermediate JVM sizes
- 1:26:51Q&A and closing remarks
related talks
01h 32mBuilding and Tuning High Performance Java Platforms
01h 29mVirtualizing and Tuning Large Scale Java Applications
51mJava 10/11 Memory Management and GC
40mTrash Talk - Exploring the Memory Management in the JVM
47mSecrets of Performance Tuning Java on Kubernetes
52m-XX:+UseG1GC
46mPrinciples of Memory Management in Java
52mGC Tuning & Troubleshooting Crash Course
