GraalVM Native Images
Images natives GraalVM pour démarrage rapide, compilation native, AOT, reflection hints, limitations
1Qu'est-ce que GraalVM Native Image ?
Qu'est-ce que GraalVM Native Image ?
Réponse
GraalVM Native Image est une technologie qui compile les applications Java en exécutables natifs autonomes via compilation AOT (Ahead-of-Time). Contrairement à la JVM classique qui utilise la compilation JIT (Just-In-Time) à l'exécution, Native Image analyse et compile tout le code à l'avance. Cela permet un démarrage quasi instantané (millisecondes), une empreinte mémoire réduite et aucune dépendance à une JVM pour l'exécution.
2Quelle est la principale différence entre compilation AOT et JIT ?
Quelle est la principale différence entre compilation AOT et JIT ?
Réponse
La compilation AOT (Ahead-of-Time) analyse et compile tout le code avant l'exécution, produisant un exécutable natif optimisé. La compilation JIT (Just-In-Time) compile le bytecode Java en code machine progressivement pendant l'exécution. AOT offre un démarrage instantané mais nécessite un build plus long, tandis que JIT démarre lentement mais optimise le code au fil de l'exécution basé sur les patterns d'utilisation réels.
3Quel plugin Maven utiliser pour construire une native image Spring Boot ?
Quel plugin Maven utiliser pour construire une native image Spring Boot ?
Réponse
Le plugin native-maven-plugin du groupe org.graalvm.buildtools est le plugin officiel pour construire des native images avec Maven. Spring Boot starter parent l'active automatiquement dans le profil 'native'. Il faut simplement déclarer le plugin dans la section plugins et lancer mvn -Pnative spring-boot:build-image ou mvn -Pnative package selon le mode souhaité.
Comment activer le profil Maven pour la compilation native Spring Boot ?
Qu'est-ce que le principe du 'closed-world assumption' dans GraalVM Native Image ?
+17 questions d'entretien
Autres sujets d'entretien Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging avec SLF4J et Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Gestion des exceptions
Validation avec Bean Validation
Spring Data JPA - Les bases
Entités JPA et relations
Requêtes JPA
Spring Data Repositories
Spring Security - Les bases
Spring Boot Actuator
Tests unitaires avec JUnit et Mockito
Tests Spring Boot
Profiles et Environment
RestTemplate et WebClient
Async et Scheduling
Caching avec Spring
Spring WebFlux (Reactive)
Transactions Spring
Authentification et autorisation avancées
JWT et sécurité stateless
OAuth2 et Authorization Server
Spring Boot et Docker
Microservices avec Spring
Spring Cloud Config
Optimisation des performances
Maîtrise Spring Boot pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement