ここでは,明示管理ヒープ機能を利用するための共通の設定について説明します。
明示管理ヒープ機能を利用する場合,次の設定が必要です。
また,明示管理ヒープ機能の適用対象を制御する場合,次の設定が必要です。
J2EEサーバの設定は,簡易構築定義ファイルで実施します。
明示管理ヒープ機能を使用するための共通の設定は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内のJavaVM起動パラメタ(add.jvm.arg)でJavaVMのオプションを指定します。
明示管理ヒープ機能のJavaVMオプションの定義について次の表に示します。
表8-15 明示管理ヒープ機能のJavaVMオプションの定義
JavaVMオプション | 設定内容 | デフォルト値 |
---|---|---|
-XX:[+|-]HitachiUseExplicitMemory | 明示管理ヒープ機能を使用するかどうかを設定します。 |
|
-XX:[+|-]HitachiAutoExplicitMemory | 明示管理ヒープ機能の自動配置機能を使用するかどうかを設定します。 | -XX:-HitachiAutoExplicitMemory |
-XX:HitachiAutoExplicitMemoryFile: <文字列> | 明示管理ヒープ機能の自動配置機能を使用する場合に利用する,自動配置設定ファイルのパスを指定します。 | 空文字 |
-XX:[+|-]HitachiExplicitMemoryAutoReclaim | 明示管理ヒープ機能の自動解放機能を使用するかどうかを指定します。 | -XX:+HitachiExplicitMemoryAutoReclaim |
-XX:[+|-]HitachiExplicitMemoryCompatibleToV8 | Explicitメモリブロックを確保する方法を,08-00と同様にするかどうか指定します。08-50以降の新機能を利用しないで,08-00で動作するアプリケーションをそのまま08-50で動作させる場合,このオプションを有効にします。 | -XX:-HitachiExplicitMemoryCompatibleToV8 |
-XX:HitachiExplicitHeapMaxSize※2 | Explicitヒープ領域の最大サイズを設定します。(単位:バイト) | -XX:HitachiExplicitHeapMaxSize =64m |
-XX:HitachiExplicitMemoryLogLevel:<文字列> | <文字列>に明示管理ヒープ機能で出力するイベントログのログレベルを設定します。 次のどれかを指定します。
| -XX:HitachiExplicitMemoryLogLevel:normal |
-XX:HitachiExplicitMemoryJavaLog:<文字列> | <文字列>に明示管理ヒープ機能で出力するイベントログの出力先パス名を指定します。 |
|
-XX:HitachiExplicitMemoryJavaLogFileSize=<整数値> | <整数値>にイベントログのファイルサイズを指定します。(単位:バイト) | -XX:HitachiExplicitMemoryJavaLogFileSize =4m |
-XX:ExplicitMemoryFullGCPolicy=<数値> | FullGC発生時に,参照関係に基づくオブジェクトのJavaヒープからExplicitメモリブロックへの移動を制御するかどうかを指定します。 | -XX:ExplicitMemoryFullGCPolicy=0 |
-XX:[+|-]ExplicitMemoryUseExcludeClass | 明示管理ヒープ機能適用除外クラス指定機能を有効にするかどうかを指定します。 | -XX:-ExplicitMemoryUseExcludeClass |
-XX:ExplicitMemoryExcludeClassListFile:<文字列> | 明示管理ヒープ機能適用除外クラス指定機能を使用する場合に利用する,明示管理ヒープ機能適用除外設定ファイルのパスを指定します。 | 空文字 |
-XX:ExplicitMemoryNotExcludeClassListFile:<文字列> | 明示管理ヒープ機能適用除外クラス指定機能を使用する場合に利用する,明示管理ヒープ機能適用除外無効設定ファイルのパスを指定します。 | 空文字 |
簡易構築定義ファイルでの定義例を次に示します。
<param-name>add.jvm.arg</param-name> |
指定するJavaVMオプション,および簡易構築定義ファイルで指定するタグの詳細は,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。
バッチサーバの設定は,簡易構築定義ファイルで実施します。
明示管理ヒープ機能を使用するための共通の設定は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内のJavaVM起動パラメタ(add.jvm.arg)でJavaVMのオプションを指定します。
指定するJavaVMのオプションは,「(1) J2EEサーバの設定」を参照してください。
cjclstartapコマンドで動作させるJavaアプリケーションの設定は,Javaアプリケーション用オプション定義ファイル(usrconf.cfg)で実施します。
明示管理ヒープ機能を使用するための共通の設定は,Javaアプリケーション用オプション定義ファイル(usrconf.cfg)のJavaVM起動パラメタ(add.jvm.arg)でJavaVMのオプションを指定します。
指定するJavaVMのオプションは,「(1) J2EEサーバの設定」を参照してください。
Javaアプリケーション用オプション定義ファイル(usrconf.cfg)での定義例を次に示します。
add.jvm.arg=-Xms512m |
Javaアプリケーション用オプション定義ファイル(usrconf.cfg)については,マニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」の「14.2 usrconf.cfg(Javaアプリケーション用オプション定義ファイル)」を参照してください。
自動配置設定ファイルを使用して明示管理ヒープ機能を利用する場合,-XX:+HitachiAutoExplicitMemoryオプションを指定し,Explicitヒープに配置したいオブジェクトの設定が必要です。
Explicitヒープに配置したいオブジェクトの設定は,簡易構築定義ファイルの論理J2EEサーバ(J2EE-Server)の<configuration>タグ内にAutoExplicitMemoryTextパラメタで指定します。
定義例を次に示します。
: |
自動配置設定ファイルの作成方法については,「8.13.2 自動配置設定ファイルを使った明示管理ヒープ機能の使用」を参照してください。
自動配置設定ファイルは,運用管理ポータルの[起動パラメタの設定]画面(論理J2EEサーバの定義)またはユーザ任意のファイル(-XX:HitachiAutoExplicitMemoryFileプロパティで指定したファイル)でも設定できます。
明示管理ヒープ機能適用除外設定ファイルを使用し,参照関係に基づく移動の対象となるオブジェクトに対して明示管理ヒープ機能の適用を制御する場合は,次のオプションの指定と,Explicitヒープに移動しないクラスの設定が必要です。
Explicitヒープに移動しないクラスの設定は,明示管理ヒープ機能適用除外設定ファイルに記述します。
記述例を次に示します。
com.sample.ClassA |
また,明示管理ヒープ機能適用除外設定ファイルに記述しているクラスのうち,一部のクラスをExplicitヒープに移動したい場合は,明示管理ヒープ機能適用除外無効設定ファイルに,明示管理ヒープ機能適用除外の設定を無効にしたいクラスを記述します。
明示管理ヒープ機能適用除外設定ファイル,および明示管理ヒープ機能適用除外無効設定ファイルの作成方法については,「8.13.3 設定ファイルを使った明示管理ヒープ機能の適用対象の制御」を参照してください。