この章では、Java Mission Controlとその機能の概要を説明します。
注意: Java Mission Controlを本番で使用するには、商用ライセンスが必要です。商用機能の詳細とそれらを有効化する方法については、http://www.oracle.com/technetwork/java/javaseproducts/ にアクセスしてください。 |
Java Mission Controlを使用すると、通常この種のツールにつきもののパフォーマンス・オーバーヘッドが発生せずに、Javaアプリケーションをモニターおよび管理できます。Java Virtual Machine (JVM)の通常の適応型動的最適化のために収集されたデータが使用されます。このアプローチは、パフォーマンス・オーバーヘッドを最小化する他に、モニタリング・ツールがシステムの実行特性を変更する場合に発生するオブザーバ効果の問題を排除します。
Java Mission Controlは、クライアント・アプリケーション(JMCクライアント)と、そこで実行されるいくつかのプラグインで構成されます。
JVMブラウザには、実行しているJavaアプリケーションとそのJVMが表示されます。各JVMインスタンスはJVM接続と呼ばれます。
JMXコンソールは、実行中のJVMに接続し、その特性をリアル・タイムで表示し、マネージドBean (MBean)を通じて一部のランタイム・プロパティを変更できるようにします。特定のイベントをトリガーするルールも作成できます(たとえば、アプリケーションのCPU使用率が90%に達した場合に電子メールを送信するなど)。
Java Flight Recorder (JFR)は、履歴分析とプロファイリングの詳細なパフォーマンス特性を収集および保存します。これは、スタンドアロンのパフォーマンス・モニタリングおよびプロファイリング・ツールとして使用できます。ただし、JMCクライアント用のプラグインとして使用すると、診断情報が論理的にグループ化された表、グラフ、およびダイアルで表示されます。これを使用すると、問題に焦点を当てるために必要となる期間および詳細レベルを選択できます。
Java Mission Controlプラグインは、Java Management Extensions (JMX)エージェントを使用してJVMに接続します。JMXの詳細は、http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html
のJMXテクノロジのホーム・ページを参照してください