Supercharge your JVM performance with Project Leyden and Spring Boot
summary
Project Leyden features in Java 25 via an AOT cache that records a training run (XXAOT mode record / XXAOT cache output) and speeds startup by preloading class linking and profiling. Extracting a Spring Boot fat JAR removes nested-classloader overhead (start 3s → 2.4s), adding the AOT cache and spring AOT drops time-to-first-request to ~0.6–0.95s (3x–5x improvement) while cutting CPU during startup ~2.6x; cache requires identical JDK/architecture.
AI-written summary · about
chapters (23)
- 0:00JVM performance with Leyden
- 1:27Talk goals and Leyden overview
- 3:34Java dynamic observation and JIT
- 5:58AOT cache in JDK 25
- 10:11Leyden vs GraalVM and others
- 11:33Demo: Pet Clinic startup time
- 13:39AOT cache with Spring Boot
- 15:45Extracting Spring Boot jars
- 16:28Training run with Spring Boot
- 18:32Demo: AOT cache with extracted jar
- 20:56Spring AOT benefits
- 22:44Demo: AOT cache + Spring AOT
- 24:11JDK 25 profiling improvements
- 27:20Leyden and JDK 26 next steps
- 29:05Demo: Leyden ahead-of-time compilation
- 32:34Leyden trade-offs
- 35:20Future Spring Boot improvements
- 37:26Summary and training runs
- 38:52Q&A: Cache deployment
- 40:02Q&A: Training run impact
- 41:29Q&A: Fast startup priorities
- 42:51Q&A: Leyden vs GraalVM/CRaC
- 44:55Closing remarks
related talks
41mSupercharge your JVM performance with Project Leyden
42mSupercharge your JVM performance with Project Leyden and Spring Boot
51mSupercharge your JVM performance with Project Leyden
43mStep up the performance game with Spring Boot and Project Leyden
45mProject Leyden: Improving Java’s Startup Time
46mProject Leyden's AOT - Shifting Java Startup into High Gear
46mAssembling Project Leyden
48mProject Leyden - Capturing Lightning in a Bottle
