Interstage Application Server 運用ガイド
目次 索引 前ページ次ページ

第6章 性能監視> 6.3 性能情報の分析と対処

6.3.1 性能ログファイルへのログ出力機能により採取した性能情報

 性能ログファイルへのログ出力機能を使用した場合に採取できる性能情報と、その評価方法、対処方法について説明します。

性能ログファイルの出力方法

 ispreportコマンドを使用して、性能ログファイルのレポート出力を行います。ispreportコマンドは、性能ログファイルに保存されている性能情報を1レコードずつ読み出し、以下のようにCSV形式に変換して標準出力に出力します。出力される項目は、アプリケーション種別ごとに異なります。

D1, D2, D3, D4, D5, ......

 性能ログファイルをCSV形式に変換してファイルに出力する場合は、ispreportコマンド実行時に、以下のようにして、出力先のファイル名を指定してください。

ispreport オプション > 出力先ファイル名


性能情報の項目内容

 採取できる性能情報は、アプリケーション種別ごとに項目が異なります。
 性能情報として出力される項目について、アプリケーション種別ごとに説明します。各表の項番に書かれているD1、D2、・・・は、CSV形式で出力されるD1、D2、・・・に対応しています。

トランザクションアプリケーションまたはラッパーのオブジェクトの場合(項目数17)

 ラッパーのオブジェクトはWindows(R)版、Solaris版のみ採取できます。

項番

性能情報の項目名

単位

内容

D1

データ採取開始日付

当該レコードの性能情報の測定を開始した日付

D2

データ採取開始時刻

当該レコードの性能情報の測定を開始した時刻

D3

データ採取終了日付

当該レコードの性能情報の測定を終了した日付

D4

データ採取終了時刻

当該レコードの性能情報の測定を終了した時刻

D5

オブジェクト名

測定対象の業務アプリケーションのオブジェクト名

D6

オペレーション名

測定対象の業務アプリケーションのオペレーション名

D7

プロセスID

測定対象の業務アプリケーションのプロセスID

D8

最大要求処理時間

ミリ秒

当該プロセスにおける当該オペレーションの処理時間(インターバル時間内での最大値/最小値/平均値)

D9

最小要求処理時間

ミリ秒

D10

平均要求処理時間

ミリ秒

D11

最大要求処理待ち時間

ミリ秒

クライアントアプリケーションからの要求を受け付けてから、オブジェクトが処理を開始するまでの待ち時間(インターバル時間内での最大値/最小値/平均値)

D12

最小要求処理待ち時間

ミリ秒

D13

平均要求処理待ち時間

ミリ秒

D14

処理数

当該プロセスにおける当該オペレーションの処理回数(インターバル時間内での値)

D15

要求受信数

当該オブジェクトの累積処理回数(インターバル時間内での値)

D16

処理待ち要求数

当該オブジェクトに対して処理待ちとなった要求数(インターバル時間内での最大値)

D17

平均処理待ち要求数

当該オブジェクトに対して処理待ちとなった要求数(インターバル時間内での平均値)
要求を受信した契機に滞留していた処理待ち要求数の合計を、処理数で割った値

 ispreportコマンドは、インターバル時間間隔の情報を、各プロセス上のオペレーション単位に出力します。出力情報には、各プロセス上のオペレーション単位の情報と、オブジェクト単位の情報があります。

 以下に、ispreportコマンドの出力結果の例を示します。

1つのオペレーションを持つオブジェクトの性能監視例
 オブジェクトOBJ001とOBJ002に対して、性能監視を行った場合の性能情報出力例を、以下に示します。OBJ001とOBJ002は、1つのオペレーションを持っており、プロセス多重度は1です。

複数のオペレーションを持つオブジェクトの性能監視例
 オブジェクトOBJ001に対して、性能監視を行った場合の性能情報出力例を、以下に示します。OBJ001は、2つのオペレーションを持っており、かつ、プロセス多重度は2です。

IJServerのEJBコンテナ、EJBアプリケーション(旧版互換環境用)、またはLight EJBコンテナ(旧版互換環境用)の場合(項目数22)

 注) 以降の説明では、“IJServerのEJBコンテナ、EJBアプリケーション(旧版互換環境用)、またはLight EJBコンテナ(旧版互換環境用)”を“EJBコンテナまたはアプリケーション”と記載します。

項番

性能情報の項目名

単位

内容

D1

データ採取開始日付

当該レコードの性能情報の測定を開始した日付

D2

データ採取開始時刻

当該レコードの性能情報の測定を開始した時刻

D3

データ採取終了日付

当該レコードの性能情報の測定を終了した日付

D4

データ採取終了時刻

当該レコードの性能情報の測定を終了した時刻

D5

EJBアプリケーション名

測定対象のEJBアプリケーション名
IJServerのEJBコンテナの場合、IJServer名/EJBアプリケーション名(最大288byte)
EJBアプリケーション(旧版互換環境用)の場合、EJBアプリケーション名(最大256byte)
Light EJBコンテナ(旧版互換環境用)の場合、Light EJBコンテナ名/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コンテナやLight EJBコンテナ(旧版互換環境用)に配備されたEJBアプリケーションや、EJBアプリケーション(旧版互換環境用)がMessage-driven Beanの場合には、必ず"0"が出力されます。

 ispreportコマンドは、インターバル時間間隔の情報を、各プロセス上のメソッド+シグネチャ単位に出力します。出力情報には、各プロセス上のメソッド+シグネチャ単位の情報と、EJBコンテナまたはアプリケーション単位の情報があります。

 以下に、ispreportコマンドの出力結果の例を示します。

複数のメソッドを持つEJBアプリケーションと複数のメソッドを持つEJBアプリケーションを1つ配備したLight EJBコンテナの性能監視例 (旧版互換環境用)
 EJBアプリケーションEJBAPL001とLight EJBコンテナEJBCONT001に対して、性能監視を行った場合の性能情報出力例を、以下に示します。EJBAPL001は、3つのメソッドを持っています。またEJBCONT001は、3つのメソッドを持つ1つのEJBアプリケーションEJBAPL002を配備しています。

CORBAアプリケーションの場合(項目数22)

項番

性能情報の項目名

単位

内容

D1

データ採取開始日付

当該レコードの性能情報の測定を開始した日付

D2

データ採取開始時刻

当該レコードの性能情報の測定を開始した時刻

D3

データ採取終了日付

当該レコードの性能情報の測定を終了した日付

D4

データ採取終了時刻

当該レコードの性能情報の測定を終了した時刻

D5

インプリメンテーションリポジトリID

測定対象のCORBAアプリケーションのインプリメンテーションリポジトリID

D6

オブジェクト名

インプリメンテーションリポジトリに含まれるオブジェクトの名前

D7

オペレーション名

インプリメンテーションリポジトリに含まれるオブジェクト内のオペレーション名

D8

プロセスID

測定対象のCORBAアプリケーションのプロセスID

D9

スレッドID

測定対象のCORBAアプリケーションのスレッドID

D10

最大要求処理時間

ミリ秒

当該スレッドにおける当該オペレーションの処理時間(インターバル時間内での最大値/最小値/平均値)

D11

最小要求処理時間

ミリ秒

D12

平均要求処理時間

ミリ秒

D13

最大要求処理待ち時間

ミリ秒

クライアントアプリケーションからの要求を受け付けてから、オブジェクトが処理を開始するまでの待ち時間(インターバル時間内での最大値/最小値/平均値)

D14

最小要求処理待ち時間

ミリ秒

D15

平均要求処理待ち時間

ミリ秒

D16

最大データ長

バイト

クライアントアプリケーションから送信されたデータ長(最大値/最小値/平均値)

D17

最小データ長

バイト

D18

平均データ長

バイト

D19

処理数

当該スレッドにおける当該オペレーションの処理回数(インターバル時間内での値)

D20

要求受信数

当該オブジェクトの累積処理回数(インターバル時間内での値)

D21

処理待ち要求数

当該オブジェクトに対して処理待ちとなった要求数(インターバル時間内での最大値)

D22

平均処理待ち要求数

当該オブジェクトに対して処理待ちとなった要求数(インターバル時間内での平均値)
要求を受信した契機に滞留していた処理待ち要求数の合計を、処理数で割った値

 ispreportコマンドは、インターバル時間間隔の情報を、各プロセス上のオペレーション単位に出力します。出力情報には、各プロセス上のオペレーション単位の情報と、インプリメンテーションリポジトリID単位の情報があります。

 以下に、ispreportコマンドの出力結果の例を示します。

1つのオペレーションを持つCORBAアプリケーションの性能監視例
 CORBAアプリケーションのインプリメンテーションリポジトリID IDL:MOD001/INTF001:1.0とIDL:MOD002/INTF002:1.0に対して、性能監視を行った場合の性能情報出力例を、以下に示します。IDL:MOD001/INTF001:1.0とIDL:MOD002/INTF002:1.0は、1つのオペレーションを持っており、プロセス多重度は1です。

複数のオペレーションを持つCORBAアプリケーションの性能監視例
 CORBAアプリケーションのインプリメンテーションリポジトリID IDL:MOD001/INTF001:1.0に対して、性能監視を行った場合の性能情報出力例を、以下に示します。IDL:MOD001/INTF001:1.0は、2つのオペレーションを持っており、かつ、プロセス多重度は2です。

評価方法と対処方法

 性能ログファイルへのログ出力機能で採取した性能情報の評価方法と対処方法を、以下の一覧にまとめます。
 性能異常を検出した場合は、一覧を参考にして対処してください。

項番

評価方法

対応/処置

1

性能監視を実施した全時間帯で、最大要求処理時間が長く、かつ、平均要求処理時間が、最大要求処理時間に近い時間となっている。

要求処理時間が、目標値よりも長くかかっている場合には、以下の要因が考えられます。

  • サーバアプリケーションに性能問題がある
  • システムの負荷が高い

上記の観点で、サーバアプリケーションおよびシステムを見直してください。

2

特定の時間帯で、最大・平均・最小の各要求処理時間が長くなっている。

特定の時間帯に、システム負荷が高くなっている可能性があります。
他のサーバアプリケーションの性能情報も測定し、負荷状況を確認してください。

3

特定の時間帯で、最大・平均・最小の各要求処理待ち時間が長くなっている。

4

最大要求処理時間は長いが、平均要求処理時間は短く、最小要求処理時間に近い時間となっている。

以下の要因が考えられます。

  • 一時的にシステムの負荷が高くなった
  • 特定の条件下でサーバアプリケーションに性能問題がある

上記の観点で、システムおよびサーバアプリケーションを見直してください。

5

最大要求処理待ち時間は長いが、平均要求処理待ち時間は短く、最小要求処理待ち時間に近い時間となっている。

6

性能監視を実施した全時間帯で、最大要求処理待ち時間および平均要求処理待ち時間が長くなっている。

クライアントからの要求数に対して、サーバアプリケーションの処理能力が不足しています。
ワークユニット定義でプロセス多重度を上げるなど、サーバアプリケーションの処理能力を上げる対処を実施してください。

7

特定の時間帯で、処理数・処理待ち要求数が多くなっている。

特定の時間帯にサーバアプリケーションに対する要求数が増加しています。
クライアントからの要求数に対して、サーバアプリケーションの処理能力が不足している場合には、ワークユニット定義でプロセス多重度を上げるなど、サーバアプリケーションの処理能力を上げる対処を行ってください。

8

EJBオブジェクト数がクライアント接続数より多くなっている。 (※)

EJBオブジェクトの数が増加しています。createメソッドに対するremoveメソッドの実行がされていない可能性があります。
クライアントアプリケーションの見直しを実施してください。

9

Passivate数が多くなっている。 (※)

Entity初期インスタンス数が不足しています。
Passiivate数の増加を目安にして、Entity初期インスタンス数を増やしてください。

10

VMのメモリ使用量が多くなっている。 (※)

メモリリークをしている可能性があります。
オブジェクトの削除の観点で、見直しを実施する等、サーバアプリケーションの見直しを実施してください。

11

処理待ち要求数が大きいが、平均要求処理待ち時間が短い。

isinfobjコマンドを使用して、定期的に待ちキューの状態を確認し、インターバル時間内の負荷状態を確認してください。

 ※) EJBアプリケーションの場合のみ、有効です。


目次 索引 前ページ次ページ

Copyright 2006 FUJITSU LIMITED