1. Обзор
По мере роста популярности микросервисной архитектуры гигантские монолитные приложения уходят в прошлое. Java не стоит на месте, а адаптируется к современным потребностям. Например, Oracle, Red Hat, BellSoft и другие участники активно развивают проект GraalVM . Кроме того, год назад был выпущен микросервисный фреймворк Quarkus . Что касается Spring Boot, VMware работает над проектом Spring Native уже два года.
В результате, благодаря сотрудничеству между VMware и BellSoft, Spring Native стал сквозным решением для нативных образов, которое включает в себя Liberica Native Image Kit , инструмент, основанный на исходном коде GraalVM. Spring Native и Liberica NIK позволяют разработчикам создавать собственные исполняемые файлы приложений Spring Boot, которые оптимизируют потребление ресурсов и минимизируют время запуска.
В этом руководстве мы узнаем, как использовать технологию собственных образов с приложениями Spring Boot, создав и запустив одно и то же приложение тремя способами — в виде классического файла JAR; в качестве собственного контейнера изображений с Liberica JDK и Spring Native; и как собственный образ с помощью Liberica Native Image Kit. Затем мы сравним их скорость запуска. В каждом случае мы будем использовать приложение JDBC petclinic из проекта Spring Native в качестве примера.