WebLogic Portal環境にCoherence*Webをインストールして、Coherenceに基づくセッション状態管理を実現できます。Coherence*Webを使用すると、クラスタ環境でより高度なデプロイメント・モデル、セッション・モデル、およびロック・モードが可能になります。これらの機能の詳細は、第4章「Coherence*Webセッション管理機能」を参照してください。
注意: 他のWebLogic Serverアプリケーション同様、第2章「WebLogic Server 10.3へのCoherence*Webのインストール」の説明にあるすべての情報と手順は、WebLogic PortalへのCoherence*Webのデプロイメントにも該当します。事前に第2章に目を通してください。第2章には、この章を理解する上で重要な情報が掲載されています。ただし、WebLogic PortalにCoherence*Webをインストールするために、WebLogic ServerにもCoherence*Webをインストールする必要はありません。 |
WebLogic PortalアプリケーションにCoherence*Webをインストールするには、次の手順を実行します。
「コンフィギュレーションとデプロイメントの概要」に示す手順に従ってWebLogicのパッチID N41Dをインストールします。
ポータル・エンタープライズ・アプリケーションのAPP-INF\lib
ディレクトリにcoherence.jar
(Coherence 3.4.2に付属)をコピーします。
(オプション)Coherence P13N CacheProvider
を使用する場合は、coherence-wlp.jar
をポータル・エンタープライズ・アプリケーションのAPP-INF\lib
にコピーします。
P13N CacheProvider SPIの実装とWSRPフェデレーテッド・ポータルの詳細は、「Coherence*WebとWebLogic Portalの使用」を参照してください。
(オプション)Coherence P13N Cacheをデフォルトのキャッシュ・プロバイダとして使用する場合は、ポータル・エンタープライズ・アプリケーションのMETA-INF\p13n-cache-config.xml
ファイルで、最初の<cache>
要素の前に次の要素を追加します。
<default-provider-id>com.tangosol.coherence.weblogic</default-provider-id>
ポータルWebアプリケーションのWEB-INF\weblogic.xml
ファイルで、次のようにlibrary-referenceを使用してcoherence-web-spi.war
を参照します。
<wls:library-ref> <wls:library-name>coherence-web-spi</wls:library-name> <wls:specification-version>1.0.0.0</wls:specification-version> <wls:implementation-version>1.0.0.0</wls:implementation-version> <wls:exact-match>false</wls:exact-match> </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>
ワークショップのEARデプロイメントを使用して、テスト・アプリケーションの.EAR
を作成します。このEARがテスト用のクラスタにデプロイされます。
ポータル・ドメインで、アプリケーションEARをクラスタにデプロイします。
Oracle WebLogic Portalは、Coherenceに緊密に統合されています。具体的には、Coherenceには次の統合ポイントがあります。
HTTPセッションの状態を管理するためのCoherence*Web
P13N CacheProvider SPIの実装
CoherenceとWebLogic Portalのカスタム・データ転送メカニズムを使用するWSRPフェデレーテッド・ポータル間で効率的にデータを共有するための構想
WebLogic Portalでは、内部的に独自のキャッシュ・サービスを使用して、ポータル、パーソナライズ、およびコマースの各データをキャッシュ処理します。その説明は以下を参照してください。
WebLogic Portal 8.1.6以降には、サード・パーティ・キャッシュ・ベンダーで実装できるP13Nキャッシュ・サービス用のSPIが付属しています。Coherenceは、P13N CacheProvider SPIの実装を備えています。この実装をWebLogic Portalアプリケーションにインストールすることによって、キャッシュしたP13Nデータの透過的な管理がコードを変更せずに実現します。さらに、CoherenceとWebLogic Portalを組み合せることによって、キャッシュ・トポロジを柔軟に選択できるようになります。
たとえば、ポータル・サーバーが4GBのヒープ制限(32ビットJVMの場合)に到達していることやポータル・サーバーのGC時間が長くなっていることが判明した場合は、 クライアントとサーバーで構成するキャッシュ・トポロジを利用して、シリアライズ可能なP13N状態をポータルJVMから1台以上の専用Coherenceキャッシュ・サーバーに移動できます。これによって、ポータルJVMのヒープ・サイズとGC時間を低減できます。また、Coherence管理フレームワークを使用して統計を詳しく監視することで、P13Nキャッシュ設定をより適切な状態に調整できます。最後に、Coherence CacheProvider
によって、ポートレットで標準のP13NキャッシュAPIを使用してCoherenceキャッシュ・サービスを利用できるようになります。
Coherence P13N CacheProvider
をインストールするには:
Coherenceのインストール環境にあるlib
ディレクトリから、付属のcoherence-wlp.jar
ライブラリとcoherence.jar
ライブラリをWebLogic PortalアプリケーションのAPP-INF/lib
ディレクトリにコピーします。
WebLogic Portalアプリケーションごとに、そのMETA-INF
ディレクトリにあるp13n-cache-config.xml
ファイルでCoherence P13N CacheProvider
をデフォルトのプロバイダとして構成します。具体的には、最初の<cache>
要素の直前に次の行を追加します。
<default-provider-id>com.tangosol.coherence.weblogic</default-provider-id>
プロバイダで使用するCoherence CacheProvider
とCoherenceキャッシュの構成方法は、PortalCacheProvider
クラスのJavadocを参照してください。
WebLogic Portalで使用するいくつかのキャッシュについては、次のドキュメントも参照してください。
http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/caches/caches.html
Web Services for Remote Portlets(WSRP)プロトコルは、任意のポータル・サーバーとサーバー・クラスタでホストされたポータルのフェデレーションをサポートすることを目的としています。WSRPを使用して、他のリモート・ポータルでホストされている様々なポートレットにあるコンテンツとユーザー・インタフェース(UI)を集約できます。ただし、スケーラブルで高信頼性、高性能なフェデレーテッド・ポータルを実装して、分散ポートレットで共有するデータのライフサイクルを作成、アクセス、および管理するという課題に、WSPRだけで対処することはできません。幸い、WebLogic Portalには、WSRP仕様の拡張機能が用意されています。この拡張機能をOracle Coherenceと組み合せることによって、WSRPのコンシューマとプロデューサでは、スコープを設定した共有データの作成、表示および変更のほか、これらのデータへの同時アクセスの制御が可能になります。しかも、スケーラビリティ、信頼性および性能の面で優れた方法でこれらが実現します。
詳細は、次のドキュメントを参照してください。
http://www.oracle.com/technology/pub/articles/dev2arch/2005/11/federated-portal-cache.html