現在、プロセスグループの最大ヒープサイズを64mほどに設定し、topで確認すると、THTPPJAVA2が500mほど使用しているように思われます。
確認1.THTPPJAVA2が使用するメモリを抑えるためには、どの設定を変更すればよいのでしょうか?
確認2.アプリケーションサーバ⇒JVM構成にある設定でしょうか?
確認3.「スタンダードモード/アドバンスモード」※が関係しますか?
※V7以前では「シングルプロセスモード/マルチプロセスモード」と読み替えてください。
確認4.現在スタンダードモードであるか、アドバンスモードであるかを確認する手段はありますでしょうか?
回答1.
設定でメモリ使用量を抑える場合、最も影響があるのはヒープサイズの変更です。スレッドスタックサイズに数百MBなど大きな値を設定していることが影響している場合もありますので、スレッドスタックサイズも必要に応じて変更を検討してください。
また、topでは正確なメモリ使用量が分からないためglanceを使って計測してください。
なお、glanceでの計測は該当マシンにglanceがインストールされている必要があります。
回答2.
アプリケーションサーバ⇒JVM構成の設定はWebOTX基盤部分(エージェントプロセス)のjavaプロセスが使用するJavaVMの設定となります。THTPPJAVA2はプロセスグループのプロセスになりますので、プロセスグループのJavaVMオプションで設定してください。
設定方法は次の通りです。
・統合運用管理ツール/Webコンソールの場合
[<ドメイン名>]
-[TPシステム]
-[アプリケーショングループ]
-[<アプリケーショングループ名>]
-[プロセスグループ]
-[<プロセスグループ名>]
「JavaVMオプション」タブの「最大ヒープサイズ」にて設定
・運用管理コマンドの場合
otxadmin> login --user <ユーザ名> --password <パスワード> --host <ホスト名> --port <対象ドメインの管理ポート>
otxadmin> set tpsystem.applicationGroups.<アプリケーショングループ名>.processGroups.<プロセスグループ名>.maxHeapSize=<設定値>
※デフォルトでは単位はメガバイトです。1024MBの場合、1024と設定してください。
設定の反映にはプロセスグループの再起動、もしくはドメインの再起動が必要です。
回答3.
アドバンスドモードの場合(ユーザアプリケーションがTHTPPJAVA2 プロセスで動作している場合)、高信頼の機能を提供している影響で、WebOTX内部でもTHTPPJAVA2 プロセスでメモリを使用します。この内部で使用しているメモリを削減することはできません。また、内部で使用しているメモリはユーザアプリケーションの実装の影響で使用しているメモリと比較して、一般的に少ないです。
回答4.
ユーザアプリケーションのプロセス名は、アドバンスドモードの場合は THTPPJAVA2 です。ご質問のTHTPPJAVA2でアプリケーションが動作する場合というのはアドバンスドモードになります。スタンダードモードの場合は、引数に「-Dwebotx.funcid=agent -Ddomain.name=<ドメイン名>」という文字列が指定されている java のプロセスでアプリケーションが動作します。
なお、V9以前では、ドメイン作成時のファイル /opt/WebOTX/<ドメイン名>.properties からも確認できます。ファイル中の WebContainerの設定 server.web-container.processMultiplicity を確認してください。アドバンスドモードの場合は値がtrueであり、スタンダードモードの場合はfalseです。V10以降では「スタンダードモード」と「アドバンスドモード」が共存できるようになりましたので、設定からは確認できません。
【対象製品】Application Server
【確認済みのバージョン】 V6.5以降
【確認済みのエディション】 Enterprise Edition
【確認済みの対象OS】HP-UX 11i v3
【確認済みのJavaバージョン】すべて
【コンポーネント】TPモニタ
【カテゴリー】開発/設計(性能チューニング)