Spring Boot

GraalVM Native Images

GraalVM Native Images für schnellen Start, native Kompilierung, AOT, Reflection Hints, Einschränkungen

20 Interview-Fragen·
Senior
1

Was ist GraalVM Native Image?

Antwort

GraalVM Native Image ist eine Technologie, die Java-Anwendungen mittels AOT-Kompilierung (Ahead-of-Time) in eigenständige native ausführbare Dateien kompiliert. Anders als die klassische JVM, die zur Laufzeit JIT-Kompilierung (Just-In-Time) verwendet, analysiert und kompiliert Native Image den gesamten Code im Voraus. Das ermöglicht einen nahezu sofortigen Start (Millisekunden), einen reduzierten Speicherbedarf und keine JVM-Abhängigkeit für die Ausführung.

2

Was ist der Hauptunterschied zwischen AOT- und JIT-Kompilierung?

Antwort

Die AOT-Kompilierung (Ahead-of-Time) analysiert und kompiliert den gesamten Code vor der Ausführung und erzeugt eine optimierte native ausführbare Datei. Die JIT-Kompilierung (Just-In-Time) kompiliert Java-Bytecode während der Ausführung schrittweise in Maschinencode. AOT bietet einen sofortigen Start, erfordert jedoch eine längere Build-Zeit, während JIT langsam startet, den Code aber im Laufe der Zeit basierend auf den tatsächlichen Nutzungsmustern optimiert.

3

Welches Maven-Plugin sollte zum Erstellen eines Spring Boot Native Image verwendet werden?

Antwort

Das native-maven-plugin aus der Gruppe org.graalvm.buildtools ist das offizielle Plugin zum Erstellen von Native Images mit Maven. Spring Boot Starter Parent aktiviert es automatisch im Profil 'native'. Es genügt, das Plugin im plugins-Abschnitt zu deklarieren und je nach gewünschtem Modus mvn -Pnative spring-boot:build-image oder mvn -Pnative package auszuführen.

4

Wie aktiviert man das Maven-Profil für die native Kompilierung von Spring Boot?

5

Was ist das Prinzip der 'closed-world assumption' in GraalVM Native Image?

+17 Interview-Fragen

Meistere Spring Boot für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten