Невыносимая легкость AOT-компиляции Spring приложений

Backend
Зал №4

Spring framework использует, пожалуй, весь набор динамических свойств Java: Spring Boot приложения грузятся своим загрузчиком классов, повсеместно используются reflection, порождение и загрузка Java байт-кода на лету и т.д.

С другой стороны, в мире микросервисов набирает популярность статическая AOT компиляция Java приложений, для решения проблем быстрого старта, предсказуемой производительности, мгновенного достижения пиковой производительности. Становится интересно: может ли динамичность Spring framework ужиться со статической компиляцией?

Ответ — да, может. В этом докладе я на примере поддержки Spring Boot приложений в AOT-центричной JVM Excelsior JET покажу, как динамические свойства Java, используемые в Spring framework, могут работать совместно с AOT-порожденным машинным кодом.

Запись доклада

Презентация

Excelsior

Никита Липский

Один из инициаторов и руководителей проекта Excelsior JET, сертифицированной реализации Java SE, разрабатываемой компанией Excelsior. Работая над проектом с 1997 года, поучаствовал в исследовании и разработке практически всех компонентов продукта от ядра до продуктовых свойств. В частности, является одним из авторов поддержки OSGI на уровне JVM в Excelsior JET, технологии Java Runtime Slim Down (модуляризация Java SE, реализованная в Excelsior JET с 2007 года), обоих верификаторов Java-байткода в Excelsior JET и многого другого.

Один из инициаторов и руководителей проекта Excelsior JET, сертифицированной реализации Java SE, разрабатываемой компанией Excelsior. Работая над проектом с 1997 года, поучаствовал в исследовании и разработке практически всех компонентов продукта от ядра до продуктовых свойств. В частности, является одним из авторов поддержки OSGI на уровне JVM в Excelsior JET, технологии Java Runtime Slim Down (модуляризация Java SE, реализованная в Excelsior JET с 2007 года), обоих верификаторов Java-байткода в Excelsior JET и многого другого.

Другие спикеры секции Backend: