グローバルセッション情報の有効期限監視は,J2EEサーバ上のHTTPセッションを監視することで実施されます。有効期限の監視下では,有効期限が切れたHTTPセッションについて,EADsサーバ上のグローバルセッション情報が削除されます。しかし,J2EEサーバに障害が発生して停止した場合,そのJ2EEサーバで使用されていたグローバルセッション情報は,同じセッションIDのリクエストを受信するか,そのJ2EEサーバが再起動されるまで有効期限の監視が行われません。有効期限の監視が行われない状態が長く続くと,有効期限が過ぎても削除されないグローバルセッション情報が,EADsサーバ上のキャッシュに残り続けることになります。
このため,EADsサーバ上に残ったグローバルセッション情報を適宜削除する必要があります。
ここでは,グローバルセッション情報をコマンドによって削除する方法と注意事項について説明します。
グローバルセッション情報を削除するには,cjezclearsessionコマンドを使用します。J2EEサーバまたはWebアプリケーションが停止してから,HTTPセッションの有効期限以上の時間が経過したあとに,J2EEサーバまたはWebアプリケーションが再起動する前にコマンドを実行します。
Webアプリケーション内で,サーブレットAPIを使用してHTTPセッションごとに有効期限を設定している場合は,最も長い有効期限に合わせてコマンドを実行してください。
グローバルセッション情報を削除する手順を次に示します。
なお,cjezclearsessionコマンドに-countオプションを指定して実行すると,EADsサーバ上のセッション情報キャッシュに格納されているグローバルセッション情報のうち,コマンドの引数で指定されたWebアプリケーションに関するグローバルセッション情報で,かつ,コマンドの引数で指定されたJ2EEサーバが所有するグローバルセッション情報数を表示できます。
コマンド実行中にEADsサーバへのアクセスでエラーが発生した場合,エラーが発生した時点でコマンドの実行を中止します。
cjezclearsessionコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「cjezclearsession(グローバルセッション情報の削除(EADsセッションフェイルオーバ機能))」を参照してください。
グローバルセッション情報の削除についての注意事項を示します。
項番 | J2EEサーバ上のHTTPセッションの有無 | 動作 |
---|---|---|
1 | なし | グローバルセッションの引き継ぎができません。 |
2 | あり | EADsサーバ上のセッション情報キャッシュにグローバルセッション情報が格納されていない状態となり,J2EEサーバ上のHTTPセッションだけでWebアプリケーションが動作します。 |