この章では、Coherence*Webに関する一般的な情報を提供します。具体的には、Coherence*Webの概要とサポート対象のコンテナについて説明し、デプロイメントを決定する際に環境に基づいて考慮すべき指針を示します。
Coherence*Webは、クラスタ環境におけるセッション状態の管理に特化したHTTPセッション管理モジュールです。Coherence*WebはOracle Coherenceを基本として構築されており、その特徴は次のとおりです。
様々なWebアプリケーション、ドメイン、および異機種アプリケーション・サーバーにわたってセッションの共有と管理を可能にします。
データに対するCoherenceデータ・グリッドのスケーラビリティ、可用性、信頼性、およびパフォーマンスをメモリー内セッション管理と記憶域に提供します。
Oracle WebLogic Server、IBM WebSphere、Tomcatなど、広く使用されているアプリケーション・サーバーのすべてをサポートします(「サポートされているWebコンテナ」を参照)。
Oracle WebLogic Portal(第5章「WebLogic PortalへのCoherence*Webのインストール」を参照)などの多数のポータル・コンテナをサポートします。
Coherence上で使用可能な様々なキャッシング・トポロジ(レプリケーション・キャッシュ、パーティション・キャッシュ、ニア・キャッシュ、リードスルー・キャッシュ、ライトスルー・キャッシュ、ライトビハインド・キャッシュ、リフレッシュアヘッド・キャッシュなど)におけるセッション状態の管理を可能します。
セッション・データをJava EEアプリケーション・サーバー外部で保存可能にすることによって、アプリケーション・サーバーのヒープ領域を解放し、セッション・データを失わずにサーバーを再起動できるようにします(「デプロイメント・トポロジ」を参照)。
クラスタでセッション状態を物理的に管理する方法およびシリアライズとデシリアライズする方法を定義する複数の高度なセッション・モデル(モノリシック、トラディショナル、およびスプリット)をサポートします(「セッション・モデル」を参照)。
セッション・ディストリビューション・コントローラおよびリーパーにより、セッション・ディストリビューションとライフサイクルを高度に制御できます(「期限切れHTTPセッションのクリーンアップ」を参照)。
プラッガブル・ポリシーにより、セッションとセッション属性のスコープをきめ細かく設定できます(「セッションとセッション属性のスコープ設定」を参照)。
WebLogic ServerおよびWebLogic PortalでのCoherence*Webの使用
最新リリースのCoherence*Webは、ネイティブのWebLogicセッション管理SPIを使用して、バージョン9.2 MP1および10.3のWebLogic ServerとWebLogic Portalに統合できます。このWebLogicとの緊密な統合によって、WebInstallerによるアプリケーション設定を必要としない容易なインストールとデプロイメントが実現します。
第2章「WebLogic Server 9.2 MP1および10.3へのCoherence*Webのインストール」で、WebLogic ServerにSPIベースでCoherence*Webを実装する方法について詳しく説明します。
第5章「WebLogic PortalへのCoherence*Webのインストール」で、WebLogic PortalにSPIベースでCoherence*Webを実装する方法について詳しく説明します。
Coherence*Webとその他のアプリケーション・サーバー
Coherence*Webには、バージョン10.3と9.2MP1のWebLogic Serverだけでなくその他のサード・パーティ製アプリケーション・サーバーにも使用できる汎用インストーラが用意されています。これによりWebアプリケーションを透過的に設定できます。
第3章「その他のアプリケーション・サーバーへのCoherence*Webのインストール」で、WebInstallerによるCoherence*Webの実装について詳しく説明します。
表1-1は、Coherence*Webセッション管理モジュールでサポートされているWebコンテナを示しています。また、これらのWebコンテナにCoherence*Webをインストールする際に必要な情報へのリンクも示しています。Oracle WebLogic Server 9.2 MP1と10.3を除くすべてのWebコンテナには、一般的なインストール手順が共通に適用されます。Webコンテナの中には、この一般的なインストール手順を開始する前に、そのコンテナ固有の追加の手順を実行しなければならないものがわずかにあります。Oracle OC4J、Caucho、WebLogic 10.xなどがこのようなコンテナに該当します。
WebLogic Server 9.2 MP1、10.3、およびそれ以降のバージョンにCoherence*Webセッション管理モジュールをインストールする場合は、SPIベースのインストール方法のみを使用できます。WebLogic Server 9.2 MP1および10.3に管理モジュールをインストールする手順は、第2章「WebLogic Server 9.2 MP1および10.3へのCoherence*Webのインストール」を参照してください。
表1-1 Coherence*WebでサポートされているWebコンテナ
アプリケーション・サーバー | サーバー・タイプの別名 | インストール手順の参照先 |
---|---|---|
Generic |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
|
Apache Tomcat 6.0.x |
Generic |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Resin/3.1.x |
|
|
IBM WebSphere 6.x |
WebSphere/6.x |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
JBoss Application Server |
GenericまたはJetty/5.1.x |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Jetty 5.1.x |
Jetty/5.1.x |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Jetty 6.1.x |
Generic |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Oracle OC4J 10.1.3.x |
Oracle/10.1.3.x |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Oracle WebLogic 9.2 MP1および10.3以降 |
該当なし |
9.2 MP1および10.3以降のバージョンには、SPIベースのインストール方法を使用できます。第2章「WebLogic Server 9.2 MP1および10.3へのCoherence*Webのインストール」を参照してください。 |
Oracle WebLogic 9.x |
WebLogic/9.x |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Oracle WebLogic 10.x |
WebLogic/10.x |
|
Sun Application Server 8.x |
Generic |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
Sun GlassFish 2.x |
Generic |
Coherence*Webセッション管理モジュールをインストールする一般的な手順 |
この項では、Coherence*Webをインストールして構成する前に必要なデプロイメント決定の概要について説明します。Coherence*Webは、様々なアプリケーション・サーバー上でサポートされています。デプロイ先のアプリケーション・サーバーのタイプによって、WebLogic SPIインストールまたはWebInstallerのどちらを使用してCoherence*Webをインストールするかが決まります。使用するアプリケーション・サーバーに関係なく、パッケージ化での考慮事項、セッション・モデル、セッション・ロック・モード、デプロイメント・トポロジなどの特定の要件を満たすためにCoherence*Webのコンフィギュレーション・オプションの変更が必要になることがあります。
クラスタ・ノード分離とは、アプリケーション・サーバーのJVMごとにCoherenceで作成されるノードの数とCoherenceライブラリのデプロイ先の場所を意味します。いくつかの分離モードがサポートされています。
たとえば、同じ1つのクラスタ(または1つのCoherenceノード)を使用する必要があるコンテナに複数のアプリケーションをデプロイするモード、単一のクラスタを使用する単一のEARファイルにパッケージ化した複数のWebアプリケーションを使用するモード、独立したセッション・データを保持したままで専用のCoherenceクラスタにデプロイする必要のあるWebアプリケーションを使用するモードなどが考えられます。これらの選択肢、およびデプロイメントで構成が必要なディスクリプタと要素については、「クラスタ・ノード分離」で説明します。
ロック・モードとは、複数のWebコンテナ・スレッドから同時にアクセスが発生したときのHTTPセッションの動作を指します。Coherence*Webには、様々なセッション・ロック・オプションが用意されています。たとえば、クラスタにある複数のノードから1つのHTTPセッションに同時にアクセスできるようにする、クラスタから1つのHTTPセッションにアクセスできるノードの数を1つのみに制限する、クラスタから1つのHTTPセッションにアクセスできるスレッドの数を1つのみに制限する、などが可能です。また、同じWebアプリケーション・インスタンスへの複数のスレッドからのアクセスを許可する一方で、異なるWebアプリケーション・インスタンスにあるスレッドからの同時アクセスを禁止することもできます。これらの選択肢、およびデプロイメントで構成が必要なディスクリプタと要素については、「セッション・ロック・モード」で説明します。
セッションとセッション属性のスコープ設定とは、アプリケーション境界を越えてセッション・データとセッション属性の両方の有効範囲を詳細に設定(共有)する操作を指します。Coherence*Webでは、Webアプリケーション間でセッションを共有したり、アプリケーション間で共有するセッション属性を制限することができます。これらの選択肢、およびデプロイメントで構成が必要なディスクリプタと要素については、「セッションとセッション属性のスコープ設定」で説明します。
HTTPセッションは最終的にセッション・リーパーによってクリーンアップされ、関連付けられているメモリーが解放されます。Coherence*Webのセッション・リーパーは、JVM固有のガベージ・コレクション(GC)機能に似たサービスを提供します。つまり、期限切れのHTTPセッションをクリーンアップしてメモリーを解放します。セッション・リーパーについては、「期限切れHTTPセッションのクリーンアップ」で説明します。
実行するインストール手順は、アプリケーション・サーバーによって異なります。Coherence*Webでサポートされているアプリケーション・サーバーは、「サポートされているWebコンテナ」に示すとおりです。
WebLogic Server 9.2 MP1と10.3、およびWebLogic Portal 10.3では、ネイティブのWebLogic Server SPIベースのインストール手順を使用します。第2章「WebLogic Server 9.2 MP1および10.3へのCoherence*Webのインストール」を参照してください。
WebLogic Portal 10.3へのCoherence*Webのインストールは、WebLogic Serverからは全面的に独立した操作です。つまり、Coherence*WebをWebLogic Portalにインストールするために、WebLogic ServerにもCoherence*Webのインストールが必要になることはありません。第5章「WebLogic PortalへのCoherence*Webのインストール」を参照してください。
その他のアプリケーション・サーバーの場合は、汎用のJava EE Webアプリケーション設定を使用します。第3章「その他のアプリケーション・サーバーへのCoherence*Webのインストール」を参照してください。