WebSphere Application Server Performance Tuning Toolkit

WebSphere Application Server Performance Tuning Toolkit は、データ収集、データ分析、および統計的推測技術を用いて、WebSphere Application Server のユーザーがアプリケーションのパフォーマンスをチューニングすることを支援するための、Eclipse ベースのインテリジェントなツールです。このツールは、ユーザーがパフォーマンスのボトルネックを突き止め、アプリケーションを適切にチューニングすることを支援するように作られています。

背景

Java EE をベースにエンタープライズ・レベルでデプロイされたさまざまな種類の多層アーキテクチャー・アプリケーションでは、パフォーマンスの課題が大きな問題になりがちで、診断するのも困難な場合があります。多層アーキテクチャーであることから、パフォーマンス問題の原因の特定は困難であり、パフォーマンスのボトルネックを調査して突き止めるのに、通常よりも時間と労力が必要になります。このように、多層アーキテクチャー・アプリケーションでは、パフォーマンス問題が深刻な影響を及ぼす場合があります。

WebSphere Application Server 上のアプリケーションから最大限の能力を引き出すためには、アプリケーションのパフォーマンスをモニタリングしてチューニングすることが重要です。そのために役立つのが、WebSphere Application Server Performance Tuning Toolkit です。


概要

WebSphere Application Server Performance Tuning Toolkit (PTT) は、ユーザーがデータ分析と統計的推測技術を使用してシステムをモニタリングし、パフォーマンスのボトルネックを突き止められるようにすることを目的に設計された、Eclipse ベースのインテリジェントなツールです。このツールキットは JMX を使用して WebSphere Application Server の PMI (Performance Monitoring Interface) からパフォーマンス・データを収集し、そのデータを理解しやすいグラフや表で表示して、ユーザーがボトルネックを特定し、パフォーマンスを適切にチューニングできるようにします。

このツールキットを他のツールと比べたときに際立っている特徴は、このツールキットは、ユーザーがそれぞれのシステムに適したルールを定義するために使用できる動的なフレームワークを提供していることであり、そのおかげで極めて正確にパフォーマンス問題を検出し、診断することができます。図 1 に、このツールキットの主要な機能を要約します。

図1: Performance Tuning Toolkit の主要機能の要約
4つの主要な機能領域を示す図

パフォーマンスの低下を検出して自動的に措置を講じるために、特定の共通ルールが事前に定義されています。例えば、以下の事態が発生した場合にアラートを生成することができます。

  • ピープ・サイズが最大ヒープ・サイズに達した場合
  • スレッド・プールがしきい値に達した場合
  • CPU 使用率が 90% に達した場合
  • サーブレット・エラーが発生した場合
  • 接続タイムアウトが発生した場合
  • 接続待機中のスレッドがある場合
  • 破棄されたPrepared Statement数が 1000 を超えた場合
  • 無効になったセッションをアプリケーションが使用しようとした場合
  • 新しいセッションを開始する余裕がなくなった場合
  • ハング・スレッドが宣言された場合
  • トランザクションがロールバックした場合
  • トランザクションがタイムアウトになった場合

ユーザーがシステムの指標に応じたルールを独自に定義することもできます。例えば次のように、サーブレットごとの応答時間に対し、適切なしきい値を設定することができます。

rule "ServletEvent"
when
   ServlentEvent(responseTime>1500, name=="Trade");
then
   String description = "response time extends the limits";

processData.addAlert("servlet", description);}
end

主な特長と機能

Performance Tuning Toolkit には、さまざまな利点があります。

  • WebSphere Application Server を対象とした軽量のソフトウェアであり、サーバー側で何かをインストールしたり、統合したりする必要はありません。
  • リアルタイムのモニタリングと対話型の分析。
  • ルール・ベースのイベント処理により、ユーザーが独自の診断ロジックを追加することができます。
  • 優れた拡張性。
  • 使いやすいインターフェース。

さらに Performance Tuning Toolkit には、重要な機能がいくつも用意されています。

  • PMI (Performance Monitoring Interface) から収集されたデータは、データ・キューブに統合されます。
  • ルール・ベースでイベントを処理します。
  • グラフィック・ビューで詳細データまでドリルダウンして分析することができます (図2 および図3 を参照)
    図2: グラフィック・ビューでの分析
    3つのパフォーマンス・グラフが表示されたパネル
    図3: 詳細データへのドリルダウン
  • 成果物 (スレッド・ダンプおよびヒープ・ダンプ) を生成したり、トレースを使用したりすることができます。

インストール方法と使用方法

インストール方法

Peformance Tuning Toolkit をインストールするために必要な作業は、zip ファイルをダウンロードして解凍することのみです。ツールキットを起動するには、PerfTuningToolkit.exe ファイルをクリックします。

Performance Tuning Toolkit の使用方法

まず、ホストを 1 つ以上追加し、それから接続を構成します。接続がセットアップされると、ツールキットが自動的にトポロジーとサーバーに関する情報を収集し、その情報をツールキット内に保管します。ホストはいつでも追加、編集、または削除することができます。

ホストの追加

「Add a new host (新規ホストの追加)」ボタンをクリックして、新しいホストを作成します (図4 を参照)。

図4: 新規ホストの追加
新規ホストを追加するためのウィンドウ

ホストの情報を入力します。セキュリティーが有効になっている場合には、「Security enabled (セキュリティーが有効)」チェック・ボックスにチェック・マークを付けてから、「OK」をクリックします。これで、新しく作成したホストが左側の「Hosts (ホスト)」パネルに表示されます (図5 を参照)。

図5: ホスト情報の指定
ホスト情報を指定するためのダイアログ

ホストへの接続

左側の「Hosts (ホスト)」パネルで、ホスト名をダブルクリックしてホストに接続します。表示されたストリングで PIM 設定をカスタマイズするかどうかを尋ねられたら、「Yes (はい)」をクリックしてサーバーに接続し、モニタリングを開始します。

ホストに関する情報の取得

「Topology (トポロジー)」パネルでサーバー名をクリックすると、「Hosts (ホスト)」パネルの右側に「Monitor (モニター)」ウィンドウが開きます。

図6: ホストのモニタリング
ホストのパフォーマンスの詳細を示すグラフ

「Monitor (モニター)」ウィンドウには、統計情報と傾向曲線が表示されます。このウィンドウで簡単に、さまざまな側面での傾向を分析し、サーバーの潜在的問題を見つけることができます。ページの下部に数多く並んでいるタブを使用すると、さまざまなタイプの情報が得られます。各タブに表示される一部の項目は、必要に応じて展開または折り畳むことができます。

処理時間のモニタリング

「Monitor (モニター)」ウィンドウのグラフを使用して、処理時間に関する情報を表示することができます。表示できる情報には、サーブレット応答時間、トランザクション応答時間、JDBC 応答時間、サーブレットのスループット、トランザクションのスループット、JDBC のスループット、同時実行数、HTTP セッション、CPU 使用率、Java ヒープ、アラートがあります (図7 を参照)。

図7: 処理時間のモニタリング

時間間隔の設定

時間間隔の設定オプションは、モニター曲線の時間間隔を制御するためのものです。このオプションには、AutoAjustIntervalCombineIntervalDisintegrationInterval の 3 つがあります。いずれかのオプションをクリックすると、直ちに曲線の時間間隔が変更されて、曲線が再描画されます (図8 を参照)。

図8: 時間間隔の設定
時間間隔の設定を示すグラフ

Performance Tuning Toolkit には、スレッド・ダンプの生成、ヒープ・ダンプの生成、トレースの使用などのデバッグ支援機能も用意されています。

ダンプの生成

ダンプを生成するには、「Hosts (ホスト)」パネルでサーバーを選択した後、「Operation (操作)」メニューから「Generate Thread Dump (スレッド・ダンプの生成)」または「Generate Heap Dump (ヒープ・ダンプの生成)」のいずれかを選択します (図9 を参照)。

図9: ダンプの生成
ダンプを生成するためのメニューを示す画面

トレースの使用可能化

トレースを使用できるようにするには、「Hosts (ホスト)」パネルでサーバーを選択した後、「Operation (操作)」メニューから「Enable Trace (トレースの使用可能化)」を選択します (図10 を参照)。

図10: トレースの使用可能化
トレースを使用可能にするためのメニューを示す画面

「Trace Detail (トレース詳細)」ウィンドウでは、トレース・ダイアログ内で、既存のトレース・タイプを選択したりトレース情報を入力することができます (図11 を参照)。

図11: トレース情報の入力
トレース情報を入力するためのダイアログ・パネル

ルール・ファイルの編集

パフォーマンスの低下を検出したり、ボトルネックを突き止めたりするためのカスタマイズされたルールは、ルール・ファイルの中に記述されます。ルール・ファイルを調べたり、編集したりするには、「Analysis (分析)」メニューから「Edit Rules (ルールの編集)」を選択します。図12 に、ルール・ファイルを示します。

図12: ルール・ファイルの編集
ルールを編集するためのウィンドウ

構文は非常に柔軟で、簡単に使用することができます。今後、さらに多くのルールがツールキットに統合されていく予定です。


ダウンロード

内容ファイル名サイズ
Performance Tuning Toolkit for WindowsPerformanceTuningToolkit2_win32.zip260 MB
Performance Tuning Toolkit for LinuxPerformanceTuningToolkit2_linux32.zip215 MB

参考文献

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=WebSphere
ArticleID=958064
ArticleTitle=WebSphere Application Server Performance Tuning Toolkit
publish-date=05152012