Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

12.2.10 グローバルセッション情報のサイズの見積もり

ここでは,グローバルセッション情報を見積もるための機能について説明します。

グローバルセッション情報のサイズは,あらかじめ最大サイズを見積もって,DD(web.xml)に定義する必要があります。しかし,次の場合,セッション情報のサイズを見積もることは困難です。

グローバルセッション情報のサイズ見積もり機能は,開発環境でグローバルセッション情報のサイズを見積もるための機能です。グローバルセッション情報を作成してそのサイズをWebサーブレットログに出力します。この機能は開発環境で使用してください。このとき,SFOサーバのセットアップや設定,およびJ2EEサーバでのセッション情報の引き継ぎを行うための設定は不要です。

注意
グローバルセッション情報のサイズ見積もり機能は,運用環境では使用しないでください。この機能を使用すると,セッション情報の引き継ぎは無効となり,セッションフェイルオーバ機能が有効になりません。グローバルセッション情報のサイズ見積もり機能使用時に無効となる処理については,「(2) グローバルセッション情報のサイズ見積もり機能使用時に無効となる処理」を参照してください。
<この項の構成>
(1) グローバルセッション情報のサイズ見積もり機能を使用したサイズの見積もり
(2) グローバルセッション情報のサイズ見積もり機能使用時に無効となる処理
(3) グローバルセッション情報のサイズ見積もり機能を有効にするための設定
(4) グローバルセッション情報のサイズ見積もり機能使用時の注意事項

(1) グローバルセッション情報のサイズ見積もり機能を使用したサイズの見積もり

この機能を使用すると,セッションフェイルオーバ機能が有効なWebアプリケーションに対してリクエストを送信するたびに,グローバルセッション情報のサイズを示すメッセージがWebサーブレットログに出力されます。グローバルセッション情報のサイズを出力するメッセージを次の表に示します。

表12-5 グローバルセッション情報のサイズを出力するメッセージ

メッセージID 出力レベル 出力するタイミング 出力する内容
KDJE34260-I Error リクエストごと リクエスト一つ分に対応するグローバルセッション情報のサイズ
KDJE34261-I Error HTTPセッションに登録されるセッション情報ごと キー名称,区切り文字などを含むセッション情報一つ分に対応するデータのサイズ

各メッセージの出力例を次に示します。この例では,キー名称がAttribute1とAttribute2の二つのセッション情報からグローバルセッション情報を作成します。

KDJE34261-I  The session information was serialized. (J2EE application = App01, context root = /test, request URL = http://host01/test/TestServlet, attribute name = Attribute1, class name = app.MyObject1, size(byte) = 36, HTTP session ID = 01234567aaaabbbbccccddddeeeeffffserver1, global session ID = 0123456789abcdef01234567aaaabbbbccccddddeeeeffffserver1)
KDJE34261-I  The session information was serialized. (J2EE application = App01, context root = /test, request URL = http://host01/test/TestServlet, attribute name = Attribute2, class name = app.MyObject2, size(byte) = 25, HTTP session ID = 01234567aaaabbbbccccddddeeeeffffserver1, global session ID = 0123456789abcdef01234567aaaabbbbccccddddeeeeffffserver1)
KDJE34260-I  The global session information was created. (J2EE application = App01, context root = /test, request URL = http://host01/test/TestServlet, size(byte) = 65, HTTP session ID = 01234567aaaabbbbccccddddeeeeffffserver1, global session ID = 0123456789abcdef01234567aaaabbbbccccddddeeeeffffserver1)

注 太字の部分に,グローバルセッション情報のサイズを見積もるための値が出力されます。各メッセージのsize(byte)に出力される内容の詳細については,表12-6を参照してください。また,各メッセージの詳細については,マニュアル「Cosminexus メッセージ 1 KAWS/KDAL/KDJE編」を参照してください。

注※ クラス名に出力される内容は,属性値に対してjava.lang.ClassクラスのgetName()メソッドで得られた文字列です。なお,KDJE34261-Iのメッセージは,引き継ぎの対象であるセッション情報がHTTPセッションにない場合は出力されません。また,KDJE34260-Iのメッセージは,引き継ぎの対象であるセッション情報がHTTPセッションにあるかどうかに関係なく,HTTPセッションがあれば出力されます。

これらのメッセージに出力されるサイズ(size(byte))の値を基に,グローバルセッション情報のサイズを見積もります。見積もった値が,SFOサーバで冗長化できるグローバルセッション情報のサイズのデフォルト値(1,024バイト)を超えている場合は,DD(web.xml)でグローバルセッション情報の最大サイズの設定を変更する必要があります。グローバルセッション情報の最大サイズの設定方法については,「12.7.4(3) グローバルセッション情報の最大サイズ(GSInfosLengthMax)」を参照してください。

なお,KDJE34260-IおよびKDJE34261-Iのメッセージに出力されるサイズの値は,直列化可能クラスのオブジェクトを引き継ぎ対象としているかどうかによって異なります。KDJE34260-IおよびKDJE34261-Iのメッセージに出力されるサイズ(size(byte))の詳細を次の表に示します。

表12-6 KDJE34260-IおよびKDJE34261-Iのメッセージに出力されるサイズ(size(byte))の詳細

メッセージIDの種類 直列化可能クラスのオブジェクトであるセッション情報の引き継ぎ許可(GSInfoTypeSerializableEnable)の設定
true
(直列化可能クラスのオブジェクトが引き継ぎ対象の場合)
false
(直列化可能クラスのオブジェクトが引き継ぎ対象外の場合)
KDJE34260-I 次の値を合計したサイズが出力されます。
  • HTTPセッションの有効期間情報の長さ
  • 各属性のサイズ(KDJE34261-Iのメッセージで出力したサイズ)の合計
次の値を合計したサイズが出力されます。
  • HTTPセッションの有効期間情報の長さ
  • 各属性を連結する区切り文字分のサイズ(各1バイト)
  • 各属性のサイズ(KDJE34261-Iのメッセージで出力したサイズ)の合計
KDJE34261-I 次の値を合計したサイズが出力されます。
  • 属性名をシリアライズしたデータのサイズ
  • 属性値をシリアライズしたデータのサイズ
  • java.io.ObjectOutputStreamクラスが書き込むマジックナンバー,およびバージョン情報のデータ分のサイズ※1
次の値を合計したサイズが出力されます。
  • 属性名のデータのサイズ
  • 属性値のデータのサイズ
  • 属性名と属性値の区切り文字のサイズ(1バイト)
  • byte型配列の管理情報の長さ※2

注※1 HTTPセッションに登録された属性のうち,最初にシリアライズされる属性のサイズにだけ含まれます。

注※2 byte型配列であるセッション情報が引き継ぎ対象の場合にだけ含まれます。

(2) グローバルセッション情報のサイズ見積もり機能使用時に無効となる処理

グローバルセッション情報のサイズ見積もり機能を使用すると,グローバルセッション情報は作成しますが,セッション情報の引き継ぎ処理は無効となります。この場合,SFOサーバにセッション情報が冗長化されません。このほかにも,セッションフェイルオーバ機能で実行する処理で無効となるものがあります。グローバルセッション情報のサイズ見積もり機能使用時に,無効となる処理を次に示します。

(3) グローバルセッション情報のサイズ見積もり機能を有効にするための設定

グローバルセッション情報のサイズ見積もり機能を有効にする場合は,簡易構築定義ファイルと,DD(web.xml)で設定が必要になります。

(4) グローバルセッション情報のサイズ見積もり機能使用時の注意事項

グローバルセッション情報のサイズ見積もり機能使用時の注意事項を次に示します。