TGViewer
Spring АйО Spring АйО @spring_aio · 10.9K subscribers
Post #964 6.7K
🔥 HotSpot AOT-кэш: стартуем быстрее, греемся меньше

В HotSpot появился AOT-кэш, который сохраняет уже разобранные, загруженные и слинкованные классы приложения. Это снижает warm-up time и ускоряет выход на пик после старта.

JDK 24:

Трёхшаговый процесс train+assemble+run (JEP 483).

Training:

-XX:AOTMode=record -XX:AOTConfiguration=app.aotconf

Создает конфигурацию, необходимую для дальнейшего построения кеша.

Assembly:

-XX:AOTMode=create ... -XX:AOTCache=app.aot собирает кэш.

Run:

-XX:AOTCache=app.aot использует его при запуске.


JDK 25:

В кэш добавили профили часто выполняемых методов (JEP 515), из-за чего JIT может стартовать компиляцию раньше и прогрев ускоряется.

Также появился упрощённый workflow в 2 шага через -XX:AOTCacheOutput=app.aot (JEP 514), но он может требовать 2x памяти: при -Xms2g -Xmx2g окружению нужно около 4 ГБ, потому что сборка кэша запускается с отдельной кучей того же размера.

Чтобы кэш применился, окружения должны совпадать: тот же JDK/OS/архитектура, classpath только из JAR без wildcard/каталогов, prod classpath - надмножество training.

Проверка: -XX:AOTMode=on.


JDK 26:

С JDK 26 сняли ограничение по ZGC (JEP 516). Для диагностики: -Xlog:aot,class+path=info. Кэш нужно пересоздавать при любой пересборке приложения или обновлении библиотек/JDK, иначе возможны краши и странное поведение.


📚 Полный текст по ссылке: https://habr.com/ru/companies/spring_aio/articles/995398/
  • 🔥 18
  • ❤ 8
  • ⚡ 7
  • 👍 5
More from @spring_aio
  1. Oct 3, 2026⚡️⚡️Строки кода стремятся подешеветь до цены токена. Что остается ценным? Про это — трек «…
  2. Oct 2, 2026🙅‍♂️ Не каждый AI-вызов должен генерировать текст Иногда от модели нужен не красивый отве…
  3. Oct 1, 2026JEP 544: JVM будет сохранять машинный код между запусками JEP 544 (Ahead-of-Time Code Comp…
  4. Sep 30, 2026🍃 Переписываем всё на Rust, JavaScript — кошмар, AI против Vaadin | Spring АйО Подкаст №7…
  5. Sep 29, 2026⚡️ AI-плагин уже в OpenIDE Pro Вышли новые версии OpenIDE и OpenIDE Pro: AI-плагин теперь…
  6. Sep 28, 2026🧑‍💻 Скрытая возможность конфигурации Spring Boot, о которой мало говорят Представим, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →