GraalVM Native Images
Imágenes nativas GraalVM para arranque rápido, compilación nativa, AOT, reflection hints, limitaciones
1¿Qué es GraalVM Native Image?
¿Qué es GraalVM Native Image?
Respuesta
GraalVM Native Image es una tecnología que compila aplicaciones Java en ejecutables nativos autónomos mediante compilación AOT (Ahead-of-Time). A diferencia de la JVM tradicional que usa compilación JIT (Just-In-Time) en tiempo de ejecución, Native Image analiza y compila todo el código de antemano. Esto permite un arranque casi instantáneo (milisegundos), una huella de memoria reducida y ninguna dependencia de una JVM para la ejecución.
2¿Cuál es la principal diferencia entre la compilación AOT y JIT?
¿Cuál es la principal diferencia entre la compilación AOT y JIT?
Respuesta
La compilación AOT (Ahead-of-Time) analiza y compila todo el código antes de la ejecución, produciendo un ejecutable nativo optimizado. La compilación JIT (Just-In-Time) compila el bytecode de Java a código máquina de forma progresiva durante la ejecución. AOT ofrece un arranque instantáneo pero requiere un tiempo de build más largo, mientras que JIT arranca lentamente pero optimiza el código con el tiempo según los patrones de uso reales.
3¿Qué plugin de Maven usar para construir una native image de Spring Boot?
¿Qué plugin de Maven usar para construir una native image de Spring Boot?
Respuesta
El native-maven-plugin del grupo org.graalvm.buildtools es el plugin oficial para construir native images con Maven. El Spring Boot starter parent lo activa automáticamente en el perfil 'native'. Basta con declarar el plugin en la sección plugins y ejecutar mvn -Pnative spring-boot:build-image o mvn -Pnative package según el modo deseado.
¿Cómo activar el perfil de Maven para la compilación nativa de Spring Boot?
¿Qué es el principio de 'closed-world assumption' en GraalVM Native Image?
+17 preguntas de entrevista
Otros temas de entrevista Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J y Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Manejo de excepciones
Bean Validation
Fundamentos de Spring Data JPA
Entidades JPA y relaciones
Consultas JPA
Spring Data Repositories
Fundamentos de Spring Security
Spring Boot Actuator
Pruebas unitarias con JUnit y Mockito
Testing en Spring Boot
Profiles y Environment
RestTemplate y WebClient
Async y Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transacciones de Spring
Autenticación y autorización avanzadas
JWT y seguridad stateless
OAuth2 y Authorization Server
Spring Boot y Docker
Microservices con Spring
Spring Cloud Config
Optimización del rendimiento
Domina Spring Boot para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis