セッションリカバリ機能を使用する場合のJavaヒープサイズは、以下のように見積もります。
以下の式で見積もって、「チューニングガイド」の「JDK/JRE 8のチューニング」-「チューニング方法」-「Javaヒープおよびメタスペースのチューニング」で見積もったIJServerクラスタのJavaヒープサイズに加算してください。(単位:Mバイト)
50 + (0.2 × k) + (0.05 × a) + ((0.001 + 0.005 × d + d) × s) × 2
k: Session Registry Serverの同時処理数
a: (IJServerクラスタに配備している)Webアプリケーションの数
d: セッションの保持するデータ容量 =
Webアプリケーションでセッションの属性(Attribute)にセットするオブジェクトおよびキーのサイズの合計値
s: セッション数
例: 対象とするIJServerクラスタは同時処理数64、Webアプリケーション1つ、セッションに格納するデータ量が2KB、セッション数が1000の場合
50 + (0.2 × 64) + (0.05 × 1) + ((0.001 + 0.005 × 0.002 + 0.002) × 1000) × 2
= 68.87
Session Registry ServerはJava VM上で動作するため、実際のJavaヒープサイズは、負荷やGCの動作状況により異なります。
そのため正確なメモリ使用量は次のようにして実測することにより見積もることを推奨します。
本番運用のピーク時と同一条件で動作させます。Java VMが使用するメモリが不足すると、サーバーログ/イベントログ/システムログにメッセージが出力されますので、Javaヒープサイズの最大値を増やして、最適な値としてください。求めたJavaヒープサイズの最大値をそのまま本番運用時の値として利用します。
以下の式で見積もって、「チューニングガイド」の「JDK/JRE 8のチューニング」-「チューニング方法」-「Javaヒープおよびメタスペースのチューニング」で見積もったIJServerクラスタのJavaヒープサイズに加算してください。(単位:Mバイト)
(0.001 + 0.05 × d + d) × s
d: セッションの保持するデータ容量 =
Webアプリケーションでセッションの属性(Attribute)にセットするオブジェクトおよびキーのサイズの合計値
s: セッション数