Spring Boot

GraalVM Native Images

高速起動、ネイティブコンパイル、AOT、reflection hints、制限のためのGraalVMネイティブイメージ

20 面接問題·
Senior
1

GraalVM Native Imageとは何ですか?

回答

GraalVM Native Imageは、AOT(Ahead-of-Time)コンパイルによってJavaアプリケーションをスタンドアロンのネイティブ実行ファイルにコンパイルする技術です。実行時にJIT(Just-In-Time)コンパイルを使用する従来のJVMとは異なり、Native Imageはすべてのコードを事前に解析してコンパイルします。これにより、ほぼ瞬時の起動(ミリ秒)、メモリ使用量の削減、実行時のJVM依存の排除が実現します。

2

AOTコンパイルとJITコンパイルの主な違いは何ですか?

回答

AOT(Ahead-of-Time)コンパイルは実行前にすべてのコードを解析・コンパイルし、最適化されたネイティブ実行可能ファイルを生成します。JIT(Just-In-Time)コンパイルは実行中にJava bytecodeを段階的にマシンコードへコンパイルします。AOTは即座に起動できますがbuild時間が長くなり、一方JITは起動は遅いものの、実際の使用パターンに基づいて時間をかけてコードを最適化します。

3

Spring Bootのnative imageをビルドするにはどのMaven pluginを使いますか?

回答

org.graalvm.buildtoolsグループのnative-maven-pluginは、Mavenでnative imageをビルドするための公式pluginです。Spring Boot starter parentは'native' profileでこれを自動的に有効化します。pluginsセクションでpluginを宣言し、目的のモードに応じてmvn -Pnative spring-boot:build-imageまたはmvn -Pnative packageを実行するだけです。

4

Spring Bootのネイティブコンパイル用のMaven profileを有効化するにはどうしますか?

5

GraalVM Native Imageにおける「closed-world assumption」の原則とは何ですか?

+17 面接問題

次の面接に向けてSpring Bootをマスター

すべての問題、flashcards、技術テスト、コードレビュー演習、面接シミュレーターにアクセス。

無料で始める