Oracle® Fusion Middleware Oracle Coherence*WebでのHTTPセッション・マネージメントの管理 12c (12.1.2) B70746-02 |
|
前 |
次 |
この章では、Coherence*WebをWebLogic Portal環境で使用してCoherenceに基づくセッション状態管理を実現する方法を説明します。Coherence*Webを使用すると、クラスタ環境でより高度なデプロイメント・モデル、セッション・モデル、およびロック・モードが可能になります。これらの機能の詳細は、第5章「Coherence*Webセッション管理機能」を参照してください。
この章には次の項が含まれます:
注意: Oracle WebLogic Serverリリース10.3.1以降では、パッチは不要です。リリース10.3.1以降を使用している場合、この項はスキップできます。 |
WebLogic Server 10.3以前を使用している場合、適切なソフトウェア・パッチを、Coherence*Webを使用するWebアプリケーションをホストしているすべてのWebLogic Serverインスタンスに適用します。表10-1は、WebLogic Serverの各バージョンに対応するパッチとCoherenceリリース・レベルを示しています。
表10-1 WebLogic Serverと必要なCoherenceパッチ・リリース・レベル
WebLogic Server 9.2 MP1 | WebLogic Server 10.3 | WebLogic Server 10.3.1以降 | |
---|---|---|---|
WebLogic Smart Update |
パッチID: AJQB |
パッチID: 6W2W |
パッチは不要です。 |
パッチはMy Oracle SupportのWebサイト、またはWebLogic ServerのSmart Updateユーティリティを使用してダウンロードできます。
My Oracle Supportからダウンロードする手順は次のとおりです。
次のMy Oracle SupportのWebサイトにアクセスし、パッチを探します。
「パッチ」タブを選択し、「単純検索」リンクをクリックします。後続の画面で、適切な値(たとえば、11399293
)を使用してパッチ番号/名前の検索を実行します。
表示された検索結果からパッチのzipファイルをダウンロードします。
パッチのzipファイルに含まれるREADME.txt
を開き、Coherenceパッチの適用手順を確認します。
Smart Updateを使用してダウンロードする手順は次のとおりです。
Smart UpdateのガイドでSmart Updateを使用してWebLogic Serverのパッチをインストールする手順を確認してください。
本番環境では、Smart Updateの本番インストールを確認することをお薦めします。
Smart Updateのガイドは次のURLで入手できます。
http://download.oracle.com/docs/cd/E14759_01/doc.32/e14143/toc.htm
「スタート」→「すべてのプログラム」→「Oracle WebLogic」→「Smart Update」を選択し、ログイン・ダイアログ・ボックスを開きます。各自のサポートIDとパスワードを使用してログインします。
お使いのWebLogic Serverのリリースに対応するパッチをダウンロードし、適用します。図10-2は、Oracle Smart Updateのブラウザを示しています。
WebLogic PortalでCoherence*Webを使用するには、次の手順を実行します。
キャッシュ・サーバーJVMは、キャッシュしたすべてのデータ(この場合はHTTPセッション状態)の保存と管理専用のCoherence JVMです。WebLogic ServerまたはWebLogic PortalのJVMを起動する前に、1つ以上のキャッシュ・サーバーJVMを起動しておく必要があります。キャッシュ・サーバーを起動するには、次の手順を実行します。
キャッシュ・サーバーJVMを起動するためのスクリプトを作成します。Coherence*Webで使用する記憶域対応キャッシュ・サーバーを起動するスクリプトの例を次に示します。特定のJVMのチューニングの詳細は、『Oracle Fusion Middleware Oracle Coherenceでのアプリケーションの開発』のJVMチューニングに関する項を参照してください。
java -server -Xms512m -Xmx512m -cp <Coherence installation dir>/lib/coherence.jar:<Coherence installation dir
>/lib/coherence-web-spi.war -Dtangosol.coherence.management.remote=true -Dtangosol.coherence.cacheconfig=C:\Coherence1212\coherence\default-session-cache-config.xml -Dtangosol.coherence.session.localstorage=true com.tangosol.net.DefaultCacheServer
このコマンドは、default-session-cache-config.xml
ファイルをcoherence-web.jar
ファイルから抽出してC:\Coherence1212\coherence\
ディレクトリに保存していることを前提としています。
前述の手順で説明したスクリプトを使用して、キャッシュ・サーバーJVMを1つ以上起動します。
Coherence*Webのキャッシュ・トポロジをカスタマイズするには、(必要に応じて) default-session-cache-config.xml
ファイルを変更します。ファイルをsession-cache-config.xml
という名前で保存します。
default-session-cache-config.xml
ファイルのデフォルト構成の説明については、付録C「セッション・キャッシュ構成ファイル」を参照してください。
Coherence P13N (パーソナライゼーション)キャッシュ・プロバイダを使用する場合、coherence-wlp.jar
ファイルをポータル・エンタープライズ・アプリケーションのAPP-INF\lib
ディレクトリにコピーします。
P13N CacheProvider
SPI実装およびWeb Services for Remote Portlets (WSRP)フェデレーテッド・ポータルの詳細は、『Oracle Fusion Middleware Oracle Coherenceの統合』を参照してください。
Coherence P13Nキャッシュをデフォルトのキャッシュ・プロバイダとして使用する場合は、ポータル・エンタープライズ・アプリケーションのMETA-INF\p13n-cache-config.xml
ファイルで、最初の<cache>
要素の前に次の行を追加します。
<default-provider-id>com.tangosol.coherence.weblogic</default-provider-id>
ポータル・エンタープライズ・アプリケーションのAPP-INF\lib
ディレクトリにcoherence.jar
ファイルをコピーします。
ポータルWebアプリケーションのWEB-INF\weblogic.xml
ファイルで、次のようにライブラリ・リファレンス(library-ref
)を使用してcoherence-web-spi.war
ファイルを参照します。
<wls:library-ref> <wls:library-name>coherence-web-spi</wls:library-name> </wls:library-ref>
Coherence*Webセッションを有効にするには、ポータルWebアプリケーションのWEB-INF\web.xml
ファイルで、アプリケーション・パラメータcoherence-web-sessions-enabled
をtrue
に設定します。
<context-param> <param-name>coherence-web-sessions-enabled</param-name> <param-value>true</param-value> </context-param>
ポータル・ドメインで、coherence-web-spi.war
ファイルをライブラリとしてクラスタにデプロイします。
アプリケーションのEARファイルを作成します。
ポータル・ドメインで、アプリケーションのEARファイルをクラスタにデプロイします。
WebLogic Portalで実行するエンタープライズ・アプリケーションにキャッシュ・サービスを提供するように、Coherenceキャッシュ・プロバイダを構成できます。このためには、キャッシュ・プロバイダとWebLogicポータル・サーバーをアウトオブプロセス・デプロイメント・トポロジで実行するように設定する必要があります。
アウトオブプロセス・トポロジでは、WebLogicポータル・サーバー(つまりWebLogic Portalサーバー層)はローカル記憶域が無効なキャッシュ・クライアントとして構成され(つまり、tangosol.coherence.weblogic.localstorage
、tangosol.coherence.distributed.localstorage
およびtangosol.coherence.session.localstorage
システム・プロパティをfalse
に設定)、クラスタ化データを物理的に保存および管理してキャッシュ・サーバーとして動作する専用のJVMを配置します。
このアプローチには次のようなメリットがあります。
セッション・データ記憶域の負荷を、WebLogic Portal層からキャッシュ・サーバー層に移管できます。これによって、ヒープ使用量やガベージ・コレクション時間などを低減できます。
WebLogic Portalとキャッシュ・サーバー層は、独立してスケールできます。アプリケーションの処理能力が不足している場合は、起動するWebLogic Portalサーバーの数を増やします。セッション記憶域の容量が不足している場合は、起動するキャッシュ・サーバーの数を増やします。
アウトオブプロセス・トポロジは、その柔軟性によって、Oracle Coherenceのデフォルトの推奨トポロジになっています。図10-3に、アウトオブプロセス・トポロジを示します。ポータル層の各WebLogic Portalサーバーが、それぞれのニア・キャッシュを管理します。これらのニア・キャッシュは、別のキャッシュ・サーバー層で実行されるセッション・データ・キャッシュと通信します。
このトポロジの構成手順については、「アウトオブプロセス・トポロジのCoherenceキャッシュ・プロバイダのデプロイ」を参照してください。
セッション・キャッシュとポータル・キャッシュの構成ファイルを取得します。
coherence-web.jar
ファイルからdefault-session-cache-config.xml
ファイルを抽出します。
coherence-wlp.jar
ファイルからportal-cache-config.xml
ファイルを抽出します。
default-session-cache-config.xml
ファイルとportal-cache-config.xml
ファイルの内容をマージし、Coherenceグリッド・ノードのセットがセッションおよびP13Nキャッシュの両方のタイプのオブジェクトをサポートできるようにします。
このファイルのコピーが2セット必要となります。1つはCoherenceキャッシュ・サーバー用、もう1つはWebLogic Portal管理対象サーバー用です。この2つのファイルの内容は、ポータル・キャッシュ・セクションとセッション・キャッシュ・セクションのlocal-storage
プロパティの値以外、すべて同じです。
付録Fの例F-1「WebLogic PortalおよびOracle Coherenceのキャッシュ構成」には、WebLogic Portal管理対象サーバーで使用可能な、マージされた構成ファイルが示されています。セッション・キャッシュとポータル・キャッシュのlocal-storage
値はfalse
に設定されます。Coherenceキャッシュ・サーバーの構成ファイルは、セッション・キャッシュ構成セクションとポータル・キャッシュ構成セクションのlocal-storage
システム・プロパティの値をtrue
に設定する必要があることを除き、例F-1と同様にできます。
WebLogic Portal管理対象サーバーのマージされた構成ファイルを、そのサーバーのキャッシュ構成ファイルとして使用します。WebLogic Portal管理対象サーバーで実行されるアプリケーションごとに、そのアプリケーションのAPP-INF/classes
ディレクトリにこのファイルをコピーします。
Coherenceキャッシュのマージされた構成ファイルをCoherenceグリッドJVMのキャッシュ構成として設定します。たとえばキャッシュ構成ファイルを配置する次のシステム・プロパティで、portal-session-cache-config.xml
はマージされたファイルを表します。
-Dtangosol.coherence.cacheconfig=D:\Coherence1212\coherence\temp\portal-session-cache-config.xml
WebLogic Portal管理対象サーバーに対してローカル記憶域を無効にするシステム・プロパティを追加します。たとえば、次のプロパティをCoherenceキャッシュ・サーバーの起動スクリプトに追加できます。
-Dtangosol.coherence.weblogic.localstorage=false -Dtangosol.coherence.distributed.localstorage=false -Dtangosol.coherence.session.localstorage=false
EARファイルのAPP-INF/lib
ディレクトリにcoherence.jar
とcoherence-wlp.jar
ファイルをコピーします。
デプロイ手順は、「WebLogic PortalでのCoherence*Webの使用方法: 主な手順」を参照してください。
WebLogic Portal管理対象サーバーを起動します。