GraalVM Native Images
Нативні образи GraalVM для швидкого запуску, нативної компіляції, AOT, reflection hints, обмежень
1Що таке GraalVM Native Image?
Що таке GraalVM Native Image?
Відповідь
GraalVM Native Image — це технологія, яка компілює Java-застосунки в автономні нативні виконувані файли за допомогою компіляції AOT (Ahead-of-Time). На відміну від традиційної JVM, яка використовує компіляцію JIT (Just-In-Time) під час виконання, Native Image аналізує та компілює весь код заздалегідь. Це забезпечує майже миттєвий запуск (мілісекунди), зменшене споживання пам'яті та відсутність залежності від JVM для виконання.
2Яка основна різниця між компіляцією AOT та JIT?
Яка основна різниця між компіляцією AOT та JIT?
Відповідь
Компіляція AOT (Ahead-of-Time) аналізує та компілює весь код до виконання, створюючи оптимізований нативний виконуваний файл. Компіляція JIT (Just-In-Time) компілює Java bytecode у машинний код поступово під час виконання. AOT забезпечує миттєвий запуск, але потребує більше часу на build, тоді як JIT запускається повільно, але з часом оптимізує код на основі реальних шаблонів використання.
3Який Maven plugin використовувати для побудови native image Spring Boot?
Який Maven plugin використовувати для побудови native image Spring Boot?
Відповідь
native-maven-plugin із групи org.graalvm.buildtools — це офіційний plugin для побудови native images за допомогою Maven. Spring Boot starter parent активує його автоматично у профілі 'native'. Достатньо оголосити plugin у секції plugins і запустити mvn -Pnative spring-boot:build-image або mvn -Pnative package залежно від бажаного режиму.
Як активувати профіль Maven для нативної компіляції Spring Boot?
Що таке принцип 'closed-world assumption' у GraalVM Native Image?
+17 питань зі співбесід
Інші теми співбесід Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Логування за допомогою SLF4J та Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Обробка винятків
Bean Validation
Основи Spring Data JPA
Сутності JPA та зв'язки
Запити JPA
Spring Data Repositories
Основи Spring Security
Spring Boot Actuator
Модульне тестування з JUnit та Mockito
Тестування Spring Boot
Profiles та Environment
RestTemplate і WebClient
Async і Scheduling
Кешування зі Spring
Spring WebFlux (Reactive)
Транзакції Spring
Розширена автентифікація та авторизація
JWT та stateless-безпека
OAuth2 та Authorization Server
Spring Boot і Docker
Microservices зі Spring
Spring Cloud Config
Оптимізація продуктивності
Опануй Spring Boot для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно