第6章 性能監視
6.3 性能情報の分析と対処
性能ログファイルおよびリアルタイム監視で採取した性能情報の分析方法と対処方法について説明します。
6.3.1 性能ログファイルへのログ出力機能により採取した性能情報
性能ログファイルへのログ出力機能を使用した場合に採取できる性能情報と、その評価方法、対処方法について説明します。
・ 性能ログファイルの出力方法
・ 性能情報の項目内容
・ 評価方法と対処方法
■性能ログファイルの出力方法
ispreportコマンドを使用して、性能ログファイルのレポート出力を行います。ispreportコマンドは、性能ログファイルに保存されている 性能情報を1レコードずつ読み出し、以下のようにCSV形式に変換して標準出力に出力します。出力される項目は、アプリケーション 種別ごとに異なります。
D1, D2, D3, D4, D5, ......
・ 平均処理待ち要求数を出力する場合は、“-a WQUEAVG”オプションを付加してください。
・ IJServerのEJBコンテナの性能情報を出力する場合は、“-k EJBAPL”オプションを付加してください。
性能ログファイルをCSV形式に変換してファイルに出力する場合は、ispreportコマンド実行時に、以下のようにして、出力先のファイ ル名を指定してください。
ispreport オプション > 出力先ファイル名
■性能情報の項目内容
採取できる性能情報は、アプリケーション種別ごとに項目が異なります。
性能情報として出力される項目について、アプリケーション種別ごとに説明します。各表の項番に書かれているD1、D2、・・・は、CSV 形式で出力されるD1、D2、・・・に対応しています。
・ IJServerのEJBコンテナの場合
IJServerのEJBコンテナの場合(項目数22)
注) 以降の説明では、“IJServerのEJBコンテナ”を“EJBコンテナまたはアプリケーション”と記載します。
項番 性能情報の項目名 単位 内容
D1 データ採取開始日付 - 当該レコードの性能情報の測定を開始した日付 D2 データ採取開始時刻 - 当該レコードの性能情報の測定を開始した時刻 D3 データ採取終了日付 - 当該レコードの性能情報の測定を終了した日付 D4 データ採取終了時刻 - 当該レコードの性能情報の測定を終了した時刻
D5 EJBアプリケーション名 - 測定対象のEJBアプリケーション名
IJServerのEJBコンテナの場合、IJServer名/EJBアプリケーショ ン名(最大288byte)
D6 メソッド名+シグネチャ - 測定対象のメソッド名+シグネチャ(メソッドの引数と戻り値の 型)
D7 プロセスID - 測定対象のEJBコンテナのプロセスID
項番 性能情報の項目名 単位 内容 D8 スレッドID - 測定対象のメソッドが動作するスレッドID
D9 最大要求処理時間 ミリ秒 当該スレッドにおける当該メソッドの処理時間(インターバル時 間内での最大値/最小値/平均値)
D10 最小要求処理時間 ミリ秒 D11 平均要求処理時間 ミリ秒
D12 最大要求処理待ち時間 ミリ秒 クライアントアプリケーションからの要求を受け付けてから、メ ソッドが処理を開始するまでの待ち時間(インターバル時間内 での最大値/最小値/平均値) (注)
D13 最小要求処理待ち時間 ミリ秒 D14 平均要求処理待ち時間 ミリ秒
D15 処理数 回 当該スレッドにおける当該メソッドの処理回数(インターバル時 間内での値)
D16 要求受信数 回 当該EJBコンテナまたはアプリケーションの累積処理回数(イ ンターバル時間内での値)
D17 処理待ち要求数 個 当該EJBコンテナに対して処理待ちとなった要求数(インター バル時間内での最大値) (注)
D18 EJBオブジェクト数 (Session)
個 現在のEJBオブジェクト数(createメソッド実行数とremoveメソッ ド実行数の差分)(インターバル時間内での最大値)
D19 Entityの最大Passivate数 - EJBコンテナ(プロセス)のインスタンスのプーリング回数(イン
ターバル時間内での最大値)
D20 VMの最大メモリ使用量 Kバイト EJBコンテナに対応するVMのメモリ使用量(インターバル時間 内での最大値/平均値)
インターバル時間にメソッドが処理されない場合は0
D21 VMの平均メモリ使用量 Kバイト
D22 平均処理待ち要求数 個 当該オブジェクトに対して処理待ちとなった要求数(インター バル時間内での平均値)
要求を受信した契機に滞留していた処理待ち要求数の合計 を、処理数で割った値
注) IJServerのEJBコンテナに配備されたEJBアプリケーションがMessage-driven Beanの場合には、必ず“0”が出力されます。
ispreportコマンドは、インターバル時間間隔の情報を、各プロセス上のメソッド+シグネチャ単位に出力します。出力情報には、各プ ロセス上のメソッド+シグネチャ単位の情報と、EJBコンテナ単位の情報があります。
・ メソッド+シグネチャ単位の評価(D9~D11、D15)
D9~D11、D15は、D7に示すプロセス内の、D6に示すメソッド+シグネチャに対する要求処理時間、処理数を示します。この情 報を用いることにより、プロセスごとのメソッド+シグネチャ単位の評価を行えます。
なお、一度集計したD6のメソッド+シグネチャに対する情報は、次回以降の集計インターバル時間内に、1度も動作しない場合、処理数 0として出力されます。
・ EJBアプリケーション単位の評価(D12~D14、D16~D18、D22)
D12~D14、D16~D18、D22は、D5に示すEJBアプリケーションに対する要求処理待ち時間、要求受信数、処理待ち要求数等 を示します。EJBアプリケーション単位の評価が行えます。
・ プロセス単位の評価(D19~D21)
D19~D21は、D7に示すプロセスに対するEntityの最大Passivate数、VMのメモリ使用量を示します。プロセス単位の評価が行え ます。
■評価方法と対処方法
性能ログファイルへのログ出力機能で採取した性能情報の評価方法と対処方法を、以下の一覧にまとめます。
性能異常を検出した場合は、一覧を参考にして対処してください。
項番 評価方法 対応/処置
1 性能監視を実施した全時間帯で、最大要求 処理時間が長く、かつ、平均要求処理時間
要求処理時間が、目標値よりも長くかかっている場合に は、以下の要因が考えられます。
項番 評価方法 対応/処置 が、最大要求処理時間に近い時間となって
いる。
・ サーバアプリケーションに性能問題がある
・ システムの負荷が高い
上記の観点で、サーバアプリケーションおよびシステム を見直してください。
2 特定の時間帯で、最大・平均・最小の各要 求処理時間が長くなっている。
特定の時間帯に、システム負荷が高くなっている可能性 があります。
他のサーバアプリケーションの性能情報も測定し、負荷 状況を確認してください。
3 特定の時間帯で、最大・平均・最小の各要 求処理待ち時間が長くなっている。
4 最大要求処理時間は長いが、平均要求処 理時間は短く、最小要求処理時間に近い時 間となっている。
以下の要因が考えられます。
・ 一時的にシステムの負荷が高くなった
・ 特定の条件下でサーバアプリケーションに性能問題 がある
上記の観点で、システムおよびサーバアプリケーション を見直してください。
5 最大要求処理待ち時間は長いが、平均要 求処理待ち時間は短く、最小要求処理待ち 時間に近い時間となっている。
6 性能監視を実施した全時間帯で、最大要求 処理待ち時間および平均要求処理待ち時 間が長くなっている。
クライアントからの要求数に対して、サーバアプリケーショ ンの処理能力が不足しています。
ワークユニット定義でプロセス多重度を上げるなど、サー バアプリケーションの処理能力を上げる対処を実施して ください。
7 特定の時間帯で、処理数・処理待ち要求数 が多くなっている。
特定の時間帯にサーバアプリケーションに対する要求数 が増加しています。
クライアントからの要求数に対して、サーバアプリケーショ ンの処理能力が不足している場合には、ワークユニット 定義でプロセス多重度を上げるなど、サーバアプリケー ションの処理能力を上げる対処を行ってください。
8 EJBオブジェクト数がクライアント接続数より 多くなっている。 (※)
EJBオブジェクトの数が増加しています。createメソッドに 対するremoveメソッドの実行がされていない可能性があ ります。
クライアントアプリケーションの見直しを実施してくださ い。
9 Passivate数が多くなっている。 (※) Entity初期インスタンス数が不足しています。
Passiivate数の増加を目安にして、Entity初期インスタン ス数を増やしてください。
10 VMのメモリ使用量が多くなっている。 (※) メモリリークをしている可能性があります。
オブジェクトの削除の観点で、見直しを実施する等、サー バアプリケーションの見直しを実施してください。
11 処理待ち要求数が大きいが、平均要求処理 待ち時間が短い。
isinfobjコマンドを使用して、定期的に待ちキューの状態 を確認し、インターバル時間内の負荷状態を確認してく ださい。
※) EJBアプリケーションの場合のみ、有効です。
6.3.2 Systemwalker Centric Managerによるリアルタイム監視機能により採取した 性能情報
リアルタイム監視機能を使用した場合に採取できる性能情報と、評価方法、対処方法について説明します。
・ 性能情報の項目内容
・ 評価方法と対処方法
■性能情報の項目内容
採取できる性能情報は、アプリケーション種別ごとに項目が異なります。
以下に、リアルタイム監視で表示可能な性能情報の項目を、アプリケーション種別ごとに示します。なお、表示名とは、Systemwalker
Centric Managerで表示される、性能情報の項目名です。
■評価方法と対処方法
リアルタイム監視機能で採取した性能情報の評価方法と対処方法を、以下の一覧にまとめます。
性能異常を検出した場合は、以下の一覧を参考にして対処してください。また、性能ログファイルに出力された性能情報も評価の参 考としてください。
項番 評価方法 対応/処置
1 性能監視を実施した全時間帯で、最大要求 処理時間が長く、かつ、平均要求処理時間 が、最大要求処理時間に近い時間となって いる。
要求処理時間が、目標値よりも長くかかっている場合に は、以下の要因が考えられます。
・ サーバアプリケーションに性能問題がある
・ システムの負荷が高い
上記の観点で、サーバアプリケーションおよびシステム を見直してください。
2 特定の時間帯で、最大・平均・最小の各要 求処理時間が長くなっている。
特定の時間帯に、システム負荷が高くなっている可能性 があります。
他のサーバアプリケーションの性能情報も測定し、負荷 状況を確認してください。
3 特定の時間帯で、最大・平均・最小の各要 求処理待ち時間が長くなっている。
4 最大要求処理時間は長いが、平均要求処 理時間は短く、最小要求処理時間に近い時 間となっている。
以下の要因が考えられます。
・ 一時的にシステムの負荷が高くなった
・ 特定の条件下でサーバアプリケーションに性能問題 がある
上記の観点で、システムおよびサーバアプリケーション を見直してください。
5 最大要求処理待ち時間は長いが、平均要 求処理待ち時間は短く、最小要求処理待ち 時間に近い時間となっている。
6 性能監視を実施した全時間帯で、最大要求 処理待ち時間および平均要求処理待ち時 間が長くなっている。
クライアントからの要求数に対して、サーバアプリケーショ ンの処理能力が不足しています。
ワークユニット定義でプロセス多重度を上げるなど、サー バアプリケーションの処理能力を上げる対処を実施して ください。
7 特定の時間帯で、処理数・処理待ち要求数 が多くなっている。
特定の時間帯にサーバアプリケーションに対する要求数 が増加しています。
クライアントからの要求数に対して、サーバアプリケーショ ンの処理能力が不足している場合には、ワークユニット 定義でプロセス多重度を上げるなど、サーバアプリケー ションの処理能力を上げる対処を行ってください。
6.3.3 性能情報評価時の注意事項
以下に、性能情報評価時の注意事項を説明します。
・ サーバアプリケーションが、処理中に異常終了した場合、その要求は、性能情報に反映されません。