PR

チューニングに使えるJava性能監視ツール

2011年3月25日(金)
東 浩二(A-pZ)(監修:山田祥寛)

JavaVMの状況を簡易出力するjstat

Javaには、グラフィカルなフラフを出力する環境やリソースがない場合を想定したツールも用意されています。jstat(Java 1.4以前はjvmstat)と呼ばれるツールです。使い方は簡単です。

jstat -出力オプション(-h[ヘッダーを出力する行間隔]) [プロセス番号] [出力間隔(ミリ秒)]

例えば、

C:\>jstat -gcutil -h5 6684 1000

を入力すると、次のように出力されます。

  • 出力オプション: gcutilで指定されたフォーマットで、ヘッダーを5行間隔、1秒間隔で出力します。
  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
 87.58   0.00  74.95  69.37  99.47    302    0.379     5    0.453    0.832
  0.00  73.86  24.80  69.77  99.47    303    0.380     5    0.453    0.832
  0.00  73.86  24.80  69.77  99.47    303    0.380     5    0.453    0.832
  0.00  73.86  24.80  69.77  99.47    303    0.380     5    0.453    0.832

それぞれの項目の意味は、以下の通りです。

表2: jstat -gcutilの出力項目一覧

説明
S0 Survivor領域0(From)の使用率(現在の容量に対するパーセンテージ)
S1 Survivor領域1(To)の使用率(現在の容量に対するパーセンテージ)
E Eden領域の使用率(現在の容量に対するパーセンテージ)
O Old領域の使用率(現在の容量に対するパーセンテージ)
P Permanent領域の使用率(現在の容量に対するパーセンテージ)
YGC New領域のカベージ・コレクションの回数
YGCT New領域のガベージ・コレクション時間(ミリ秒)
FGC 完全カベージ・コレクションの回数
FGCT 完全ガベージ・コレクション時間
GCT ガベージ・コレクション総時間(ミリ秒)

アプリケーションの性能が思わしくない場合、コード上の不具合でなければ、ヒープ・メモリーの状況を監視することで原因がつかめることが多いです。ヒープを監視した結果のログは、ツールを使ってグラフィカルに解析することも可能であるほか、ログ自身からもヒープの状況を細かく追跡できます。実運用後の監視でも、特にガベージ・コレクションの回数をチェックしておくことは重要です。

それぞれの項目(ヒープ領域)に関する内容は、次ページで細かく説明します。

著者
東 浩二(A-pZ)(監修:山田祥寛)
WINGSプロジェクト

有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表:山田祥寛)。おもな活動は、Web開発分野の書籍/雑誌/Web記事の執筆。ほかに海外記事の翻訳、講演なども幅広く手がける。2011年3月時点での登録メンバは36名で、現在もプロジェクトメンバーを募集中。執筆に興味のある方は、どしどしご応募頂きたい。著書多数。
http://www.wings.msn.to/

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています