工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> Java

Java 10のアプリケーションクラスデータ共有(AppCDS)で起動高速化

JEP 310 - アプリケーションクラスデータ共有

JVM起動時、クラスをメモリにロードする前処理ステップがあります。複数のJARに複数のクラスがある場合、最初のリクエストで明らかな遅延が発生します。サーバーレスアーキテクチャでは、このような遅延がブートタイムを遅らせ、クリティカルな操作に影響します。アプリケーションクラスデータ共有の概念は、アプリケーションの起動時間を短縮するのに役立ちます。Javaには既存のCDS(クラスデータ共有)機能がありますが、アプリケーションクラスデータ共有では、Java 10でアプリケーションクラスを共有アーカイブに格納できるようになりました。これにより、共通のクラスメタデータを複数のJavaプロセス間で共有することで、アプリケーションの起動時間とフットプリントを削減します。

プロセス(3ステップ)

ステップ1:アーカイブするクラスのリストを作成

welcome.jarにあるGreeting.javaクラスのリストwelcome.lstをJavaランチャーで作成します。

$ java -Xshare:off -XX:+UseAppCDS -XX:DumpLoadedClassList=welcome.lst -cp welcome.jar Greeting

ステップ2:AppCDSアーカイブを作成

アプリケーションクラスデータ共有で使用するクラスリストをアーカイブします。

$ java -Xshare:dump -XX:+UseAppCDS -XX:SharedClassListFile=welcome.lst -XX:SharedArchiveFile=welcome.jsa -cp welcome.jar

ステップ3:AppCDSアーカイブを使用

JavaランチャーでAppCDSアーカイブを使用します。

$ java -Xshare:on -XX:+UseAppCDS -XX:SharedArchiveFile=welcome.jsa -cp welcome.jar Greeting

Java

  1. Java演算子をマスター:種類、構文、実践例
  2. Javaコメント:種類、使い方、ベストプラクティス
  3. Java拡張forループをマスター:構文、例、ベストプラクティス
  4. Java文字列をマスター:生成、メソッド、ベストプラクティス
  5. Javaインターフェース完全ガイド:概念、実装、ベストプラクティス
  6. Java無名インナークラス完全ガイド:定義、構文、実践例
  7. Javaのtry-with-resourcesをマスターする:自動リソース管理の仕組みと活用法
  8. Javaアノテーション完全ガイド:種類、配置場所、実践例
  9. Javaアサーション完全ガイド:バグ早期発見とコード信頼性の向上
  10. Java Vectorの理解:使い方、特徴、ArrayListとの比較
  11. Java 10のアプリケーションクラスデータ共有(AppCDS)で起動高速化