Javaサーバサイドプロファイリング 2

サーバサイドアプリケーションのプロファイリング

サーバサイドアプリケーションの解析本連載では、オープンソースソフトウェアを使ったサーバサイドのプロファイル方法を解説してきました。最終回の今回は、いよいよプロファイラを使ってサーバサイドアプリケーションの解析を行います。NetBeans Profilerの起動「第2回:NetBeans Profi

松野 洋希

2007年10月2日 20:00

サーバサイドアプリケーションの解析

本連載では、オープンソースソフトウェアを使ったサーバサイドのプロファイル方法を解説してきました。最終回の今回は、いよいよプロファイラを使ってサーバサイドアプリケーションの解析を行います。

NetBeans Profilerの起動

第2回:NetBeans Profilerを使ってみよう」を参考に、JBossASとNetBeans Profilerの起動、そしてNetBeans Profilerとアプリケーションサーバの接続を行います。

ヒープメモリ確認

ではまず、アプリケーションサーバのヒープメモリを確認してみましょう。NetBeans Profilerのウィンドウ左上にある「ビュー」タブから「VM遠隔測定」ビューをクリックして開きます。


VM遠隔測定ビュー
図1:VM遠隔測定ビュー
(画像をクリックすると別ウィンドウに拡大図を表示します)

ビューの下にはタブがあり、表示内容を切り替えることができます。それぞれのタブでは以下のような情報を取得できます。


スレッド(統計)
アプリケーションサーバ上でアクティブなスレッド数を表示します。
メモリー(ヒープ)
JavaVMのヒープメモリの状態を表示します。「ヒープサイズ」はあらかじめアプリケーションサーバに割り当てられたヒープメモリのサイズ、「使用済みヒープ」はアプリケーションで利用しているヒープメモリのサイズになります。
メモリー(GC)
ガベージコレクション(GC)に関する情報を表示します。「生存中世代」はヒープ上に存在するJavaオブ ジェクトの異なる世代の数です。「生存中世代」の数が低ければ、世代のばらつきがないことを示しますし、数が高ければ世代のばらつきがあることを示しま す。つまり、この数値が高いときは「古いオブジェクトが残りながら、新しいオブジェクトも生成されている」ことをあらわしており、すなわちメモリを無駄使 いしている可能性が高くなります。「相対GC時間」は、これまでJavaVMがGCに費やした時間を実行時間の相対値で示します。
表1:VM遠隔測定ビューで取得できる情報

この記事をシェアしてください

人気記事トップ10

人気記事ランキングをもっと見る