Cosminexus 機能解説

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

4.4.5 セッションIDおよびCookieへのサーバIDの付加

Cosminexusでは,HttpSessionのセッションIDやCookieに,サーバIDを付けることができます。これを,サーバID付加機能といいます。サーバIDは,Webコンテナごとに異なる値を設定します。

セッションIDおよびCookieへのサーバIDの付加についての設定は,J2EEサーバのプロパティをカスタマイズして設定します。J2EEサーバの動作設定のカスタマイズについては,マニュアル「Cosminexus システム構築ガイド」を参照してください。

なお,セッションフェイルオーバ機能を使用する場合は,セッションIDへのサーバIDの付加は必須となります。セッションフェイルオーバ機能については,「12. J2EEサーバ間のセッション情報の引き継ぎ」を参照してください。

<この項の構成>
(1) HttpSessionのセッションIDへのサーバID付加
(2) CookieへのサーバID付加

(1) HttpSessionのセッションIDへのサーバID付加

セッションIDは,通常,同一のWebコンテナ内では一意となります。しかし,負荷分散機を使用して複数のWebコンテナで構成するシステムの場合,システム全体ではセッションIDが一意にならないおそれがあります。HttpSessionのセッションIDへのサーバID付加機能を使用すると,HttpSessionのセッションIDに,Webコンテナごとに異なるサーバIDが付加されます。これによって,セッションIDをシステム内で一意にできます。

参考
Webサーバとの連携時に,リダイレクタの設定でラウンドロビンでリクエストの振り分けをする場合,HttpSessionのセッションIDを付加するかどうかの設定にかかわらず,セッションIDには,ワーカ名が付加されます。サーバIDは付加されません。

(2) CookieへのサーバID付加

同一のセッションのリクエストを,同一のWebコンテナに転送するには,負荷分散機のCookieによってリクエスト転送先を指定する機能と,CookieへのサーバID付加機能を使用して実現します。

CookieへのサーバID付加機能では,CookieにWebコンテナごとに異なるサーバIDが付加されます。HTTPレスポンスには,サーバIDが付加されたCookieを付けることができるので,同一のセッションのリクエストを,同一のWebコンテナに転送できます。なお,サーバIDが付いたCookieは,HttpSessionを生成したリクエストのレスポンスに付加されます。