Порефлексируем о Spring AOT

Языки программирования и технические стеки

Java
Оптимизация производительности
Оптимизация
Микросервисы

Доклад принят в программу конференции

Мнение Программного комитета о докладе

Рустам покажет, как Spring AOT ускоряет запуск Spring Boot-приложений за счет генерации кода и RuntimeHints. Это не про GraalVM Native Image и не про JDK AOT/CDS. Что меняется, где реальная выгода по времени старта, риски и шаги внедрения. В конце — демо «до/после» и чек-лист.

Целевая аудитория

Senior Java-разработчики, DevOps-инженеры, работающие с Java-проектами.

Тезисы

В гонке за перформансом Java-приложений технологии Ahead-of-Time выходят на первый план. Но если GraalVM, AOT в JDK и CDS ориентированы на статическую компиляцию и оптимизацию JVM, то Spring AOT в Spring Boot 3.x решает совсем другую задачу. Он не превращает проект в автономный исполняемый файл, а заменяет рефлексию и динамику Spring Framework на сгенерированный Java-код, ускоряя старт приложения и снижая накладные расходы.

В докладе разберём:

* как именно Spring AOT работает «под капотом»;
* что ломается и какие есть ограничения;
* как адаптировать свои проекты и тесты под AOT-режим;
* что реально выигрываем в старте и потреблении ресурсов.

Будет live-демо: соберем проект в режиме Spring AOT, посмотрим на сгенерированный код, соберем Docker-образ и сравним время запуска с обычным Spring Boot. А в конце — небольшой бенчмарк и выводы, где Spring AOT уже можно использовать на практике.

Team Lead в MAGNIT TECH. Профессионально занимается Java-backend-разработкой и микросервисами. В свободное время побеждает на хакатонах, пишет статьи, веду ютуб-канал про Java и Spring. Эксперт Spring АйО — крупнейшего сообщества Java-разработчиков. Спикер конференций JPoint, HighLoad++ и пр.

Видео