7.8.1 EADsサーバ上のグローバルセッション情報の削除(セッション情報の格納先サーバ)

グローバルセッション情報の有効期限監視は,J2EEサーバ上のHTTPセッションを監視することで実施されます。有効期限の監視下では,有効期限が切れたHTTPセッションについて,EADsサーバ上のグローバルセッション情報が削除されます。しかし,J2EEサーバに障害が発生して停止した場合,そのJ2EEサーバで使用されていたグローバルセッション情報は,同じセッションIDのリクエストを受信するか,そのJ2EEサーバが再起動されるまで有効期限の監視が行われません。有効期限の監視が行われない状態が長く続くと,有効期限が過ぎても削除されないグローバルセッション情報が,EADsサーバ上のキャッシュに残り続けることになります。

このため,EADsサーバ上に残ったグローバルセッション情報を適宜削除する必要があります。

ここでは,グローバルセッション情報をコマンドによって削除する方法と注意事項について説明します。

<この項の構成>
(1) グローバルセッション情報の削除方法
(2) 注意事項

(1) グローバルセッション情報の削除方法

グローバルセッション情報を削除するには,cjezclearsessionコマンドを使用します。J2EEサーバまたはWebアプリケーションが停止してから,HTTPセッションの有効期限以上の時間が経過したあとに,J2EEサーバまたはWebアプリケーションが再起動する前にコマンドを実行します。

Webアプリケーション内で,サーブレットAPIを使用してHTTPセッションごとに有効期限を設定している場合は,最も長い有効期限に合わせてコマンドを実行してください。

グローバルセッション情報を削除する手順を次に示します。

  1. 環境変数CLASSPATHに,EADsクライアントのJARファイルを設定します。
    cjclearsessionコマンドを初めて使用する場合,環境変数CLASSPATHに使用するEADsクライアントのJARファイル(eads-client.jar,eads-common.jar,hntrlib2-eads-j.jar)のパスを指定します。
  2. cjezclearsessionコマンドを実行してグローバルセッション情報を削除します。
    cjezclearsessionコマンドにJ2EEサーバ名,アプリケーション識別子およびサーバIDを指定して実行します。コマンドを実行すると,EADsサーバ上のセッション情報キャッシュに格納されているグローバルセッション情報のうち,コマンドの引数で指定されたWebアプリケーションに関するグローバルセッション情報で,かつ,コマンドの引数で指定されたJ2EEサーバが所有するグローバルセッション情報がすべて削除されます。
  3. 必要に応じて,J2EEサーバまたはWebアプリケーションを再起動します。

なお,cjezclearsessionコマンドに-countオプションを指定して実行すると,EADsサーバ上のセッション情報キャッシュに格納されているグローバルセッション情報のうち,コマンドの引数で指定されたWebアプリケーションに関するグローバルセッション情報で,かつ,コマンドの引数で指定されたJ2EEサーバが所有するグローバルセッション情報数を表示できます。

コマンド実行中にEADsサーバへのアクセスでエラーが発生した場合,エラーが発生した時点でコマンドの実行を中止します。

cjezclearsessionコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「cjezclearsession(グローバルセッション情報の削除(EADsセッションフェイルオーバ機能))」を参照してください。

(2) 注意事項

グローバルセッション情報の削除についての注意事項を示します。