Java Development Kit(JDK)は、Javaアプリケーションの開発用のバイナリ、ツール、およびコンパイラを提供します。含まれている便利なツールの1つはjconsoleです。
実例を示すために、JBOSSオープンソースアプリケーションサーバープロジェクトの一部であるWildFlyJ2EEアプリケーションサーバーを使用します。まず、スタンドアロンインスタンスを起動します。
~/wildfly/24.0.1/bin$ ./standalone.sh
=========================================================================
JBoss Bootstrap Environment
JBOSS_HOME: /home/alan/wildfly/24.0.1
JAVA: /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-5.fc34.x86_64/bin/java
ここで、別の端末でjconsole
と入力します 。
$ jconsole
起動すると、jconsoleはローカルインスタンスを一覧表示します。 [ローカルプロセス]を選択し、プロセスの名前を選択して、[接続]をクリックします。接続して、実行中のJava仮想マシン(JVM)でjconsoleの使用を開始するのに必要なのはこれだけです。
概要
Java Monitoring and Management Consoleは、ダッシュボードの上部にプロセスID(PID)を表示します。 [概要]タブには、ヒープメモリ使用量、スレッド、クラス、およびCPU使用率のバイタルを示す4つのグラフがあります。
Javaの詳細
- エンタープライズJavaプログラミングとは何ですか?
- OpenJDKのRedHatビルド
- Javaチートシート
- 無料のオンラインコース:マイクロサービスアーキテクチャを使用したクラウドネイティブアプリケーションの開発
- 新鮮なJavaの記事
上部にあるタブは、各エリアのより詳細なビューを提供します。
メモリ
「メモリー」タブには、JVMによって使用されているメモリーのさまざまな側面のグラフが表示されます。 JVMに割り当てられたサーバーシステムメモリの量は、ヒープと呼ばれます。この画面には、Eden Space、Old Gen、SurvivorSpaceなどのヒープの内部コンポーネントによる使用法の詳細も表示されます。ガベージコレクションアクションを手動でリクエストすることもできます。
スレッド
[スレッド]タブには、実行中のスレッドの数が表示されます。デッドロックを手動で確認することもできます。
クラス
[クラス]タブには、ロードされたクラスの数とアンロードされたクラスの数が表示されます。
VMの概要
[VMの概要]タブには、アプリケーションとホストシステムに関する多くの詳細が表示されます。現在使用しているオペレーティングシステムとアーキテクチャ、システムメモリの合計量、CPUの数、さらにはスワップスペースを知ることができます。
要約に示されているJVMの詳細には、現在および最大のヒープサイズと、使用中のガベージコレクターに関する情報が含まれます。下のペインには、JVMに渡されたすべての引数が一覧表示されます。
MBeans
最後のタブであるMBeansを使用すると、すべてのMBeanをドリルダウンして、それぞれの属性と値を表示できます。
結論
Javaは長い間使用されており、世界中の何百万ものシステムに電力を供給し続けています。多くの開発環境と監視システムが利用可能ですが、基本キットにjconsoleのようなツールが含まれていると非常に価値があります。