次に示す手順で必要なパーマネント領域のサイズを調査するのが最も確実な方法です。
なお、調査はシステムの評価環境等で実施することを推奨します。
(1) パーマネント領域を暫定的に大きくして該当のドメインを起動
(2) パーマネント領域の使用状況を次の運用管理コマンド(otxadmin)で確認
【調査対象が 運用管理エージェント の Java プロセスの場合】
otxadmin> generate-jvm-report --type memory
【調査対象が Java EE プロセスグループ に属する Java プロセスの場合】
otxadmin> generate-jvm-report --type memory --apgroup {アプリケーショングループ名} --pgroup {プロセスグループ名}
(3) 全ての業務アプリケーションを起動
全てのアプリケーションを構成する Java クラスが Java VM によってロードされ、業務プログラムが実行された状態にします。これにより、システムにおいて想定される最大負荷を掛けた状態にします。
(4) パーマネントの使用状況を (2) と同じ方法で確認
コマンドの実行結果を基に、システムで必要なパーマネント領域のサイズを決定します。
ここで、上記コマンド結果での "Perm Gen" で示すパーマネント領域の "commited" で示すJava VMにより確保されたメモリ量が "max" で示す限界値に達し、かつそれでも使用する領域が不足した際に OutOfMemoryError が発生します。
パーマネント領域の使用量はシステム稼働中に上下しますので、この調査においては想定される最大負荷を掛けた状態でもパーマネント領域にある程度の余裕があるか("used" で示す現在の使用量および "commited" で示す値が "max" に達していないか)どうかを確認します。余裕がない場合は、パーマネント領域のサイズを現在よりも大きく設定します。
なお、運用管理コマンドの実行結果の詳細については次のマニュアルをご参照ください。
【ドメイン構築・基本設定ガイド】
3. ドメイン
3.11. Javaプロセスの監視・管理
3.11.3. 統計レポート出力
【対象製品】Application Server
【確認済みのバージョン】V8.1以降
【確認済みのエディション】すべて
【確認済みの対象OS】すべて
【確認済みのJavaバージョン】すべて
【コンポーネント】製品全般
【カテゴリー】開発/設計(性能チューニング)