~/talk

Four Approaches to Reducing Java Startup Time: AppCDS, Native Image, Project Leyden, CRaC

Talkat Spring I/O 2025 · 2025-05-22..05-23· [java]
slides:none on file

Java services start at ~6.5 s as packaged in Docker and the talk demonstrates four concrete fixes with measured results and gotchas: AppCDS + Spring AOT halves startup (≈50% faster) with a class-archive created at image build, Project Leyden / Java 24 AOT cache gives ~3× reduction using -XX:AOT-cache options, GraalVM native-image produces standalone binaries that run both services under 1 s (≈1.5 s combined) but requires Maven native plugin, many build flags, platform-specific images and long/fragile builds, CRaC restores from checkpoint to ~80 ms but needs Linux, specific JDK builds, extra container capabilities and careful secret handling.

AI-written summary · about

  1. 0:00Introduction
  2. 1:50Meet the heroes
  3. 6:50Java startup time problem
  4. 8:12AppCDS solution
  5. 13:17Project Leyden future
  6. 18:39Native Image quest
  7. 24:24Native Image builds
  8. 30:45CRaC revolution
  9. 40:22CRaC in Spring
  10. 43:09Choosing your approach
  11. 44:31Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.