Oracle WebLogic Server 10g Release 3での Oracle Coherence*Web 3.4.2の使用
第2部:アプリケーションの構成とテスト

このチュートリアルでは、Oracle WebLogic Server上で実行されるアプリケーションからOracle Coherence*Webを使用するための構成方法について説明します。

約90分

トピック

このチュートリアルでは、以下のトピックについて説明します。

このアイコンの上にカーソルを置くと、すべてのスクリーンショットがロードし、表示されます。 (警告: すべてのスクリーンショットが同時にロードされるため、ご使用のインターネット接続によってはレスポンス・タイムが遅くなる場合があります。)

注: 各手順に関連したスクリーンショットのみを表示する場合は、それぞれの手順 にある各アイコンの上にカーソルを置いてください。

概要

Oracle Coherence*WebはOracle Coherenceの拡張モジュールであり、Oracle WebLogic Server、IBM WebSphere、TomcatなどのWebアプリケーション・サーバーのHTTPセッション管理を行います。 Oracle Coherence*WebはネイティブのOracle WebLogicのセッション管理用のサービス・プロバイダ・インタフェース(SPI)としてパッケージ化されているため、Oracle WebLogic Server(Oracle WLS)へOracle Coherence*Webのサポートをわずか数ステップで追加できます。

Oracle WebLogic Server上にSPIをインストールした後、アプリケーションからOracle Coherence*Webを使用できるようにするためには、いくつかの追加手順を実行する必要があります。 Oracle Coherence*WebによってWebLogic ServerのネイティブWebセッション・キャッシュが置き換えられるわけではないため、 アプリケーションに明確な構成を行わない限り、通常のOracle WebLogic ServerのHTTPセッション機能が使用されます。

このチュートリアルは2部で構成されたチュートリアルの第2部であり、Oracle WLSドメイン上のアプリケーションでOracle Coherence*Webを使用する方法について説明します。 必要なパッチとライブラリをOracle WebLogic Serverドメインにインストールする方法については、第1部で説明しています。 ここでは、実際にOracle Coherence*Webを使用するためにアプリケーションを設定し、2つに区分けされた実行中のドメインに対してテストを行います。

 

トピック・リスト に戻る

 

このチュートリアルではEclipse統合開発環境(IDE)を使用するため、インストールされている Oracle製品からのソフトウェア・パッケージの追加が必要になります。 Eclipse向けの無償拡張モジュールであるOracle Enterprise Pack for Eclipseを使用すると、Oracle WebLogic Server向けの開発とデプロイが簡単になります。 Oracle Coherenceを使用できるように、EclipseにOracle Enterprise Pack for Eclipseをセットアップする方法については、こちらのチュートリアルを参照してください。 参照先のチュートリアルをすでに完了している場合、ご使用のEclipseは正しく構成されているため、すぐにこのチュートリアルを開始できます。 それ以外の場合は、参照先のチュートリアル全体を実行するか、または第1.3項のみを実行してください。

このチュートリアルでは、Eclipseの作業領域とプロジェクトを作成および構成した後で、アプリケーション からOracle Coherence*Webを利用するために必要な基本リソースを構築します。 必要なコードはあらかじめ提供されており、シンプルなサーブレットとJavaServer Page(JSP)が含まれています。 このサーブレットとJSPは、HttpSessionへのデータ移入とアクセスを行うだけであり、Oracle Coherence固有のコードは含んでいません。 コードをインポートしたら、第1部で作成した2つのOracle WebLogic Serverドメインに対してアプリケーションをデプロイします。 はじめに、アプリケーションにOracle Coherence*Webの構成が含まれていない状態で、同じアプリケーションが、完全に独立した2つのWLSドメイン・インスタンス上でどのように動 作するかを確認します。 次に、Oracle Coherence*Web向けに必要な構成変更を実施した上で、再度アプリケーションのデプロイとテストを行い、独立した2つのドメインで同じセッショ ン情報が共有される様子を確認します。 最後の手順では、より現実的な手段として、Oracle Coherenceを使用したアプリケーション・テスト向けに同梱されたソフトウェア・ロードバランサを使用します。

トピック・リストに戻る

前提条件

このチュートリアルを始める前に次のことを確認してください。

1.

このチュートリアルの第1部を完了し、以下のすべての前提条件を満たしていること。

  • Oracle WebLogic Server 10g Release
  • WLS_AとWLS_Bという名前の2つのOracle WebLogic Serverドメインが作成されていること。
  • Oracle Coherence 3.4.2(またはそれ以降)Java Editionのインストールおよび構成が完了していること。
  • 各ドメインにOracle Coherence*Web SPIがインストールされていること。
  • 必要なOracle Coherence*WebのライブラリがOracle Coherenceのキャッシュ・サーバー・インスタンスに構成されており、このインスタンスを起動するスクリプトが作成されていること。

このチュートリアルでは、システム上の各場所に対して次のラベルを使用しています。

  • $MIDDLEWARE_HOMEOracle WebLogic Serverがインストールされている場所(現在のインストール・ドキュメントでは、BEA_HOMEになっています。)
  • $COHERENCE_HOME Oracle Coherenceがインストールされている場所
  • $DOMAIN_HOMEOracle WebLogic Serverドメインを作成する場所
  • $WORKSPACEこのチュートリアルで使用するアプリケーションを含むEclipseの作業領域の 場所

 

2.

Eclipse 3.4 SR2(Ganymede)がインス トールされており、Oracle Enterprise Pack for Eclipseがこれに追加されていること (詳しくは、チュートリアル『Oracle Coherence and Oracle WebLogic Server: Setting Up an Eclipse Development Environment』の第1.3項を参照してください。)。

 

3.

次のドキュメントを参照していること。

 

トピック・リストに戻る

Eclipseの作業領 域とWebプロジェクトの作成

ここでは、基本的な作業領域を選び、動的なWebプロジェクトを作成し、Oracle WebLogic Serverの実行時設定を指定します。

重要 このチュートリアルは、Oracle Enterprise Pack for Eclipseがインストールされていることを前提としています。 詳しくは、前提条件の項を参照してください。

作業領域のオープンとプロジェクトの 作成

トピック・リストに戻る

 

作業領域とWebプロジェクトを作成するには、以下の手順を実行しま す。

1.

Eclipseを起動します。

 

2.

Eclipse Workspace Launcherが表示されます。 作業領域を作成する場所(例:D:\oracle\tutorial)を選択します (以降、この場所を$WORKSPACEとします)。

OK」をクリックします。


3. File」 →「New」→「Dynamic Web Project」の順に選択します。

 

4.

プロジェクト名としてCoherenceWebと入力したら、Target Runtimeの横にある「New」ボタンをクリックします。

image


5.

タイプとして「Oracle」→「Oracle WebLogic Server 10gR3」を選択し、「Next」をクリックします。

image

 

6.

WebLogic Server Home($MIDDLEWARE_HOME\wlserver_10.3) を選択し、「Finish」をクリックします。

image

 

7.

Dynamic Runtime Module versionが自動的に2.5に更新され、ConfigurationにはDefault Configuration for Oracle WebLogic Server 10gR3が設定されます。

この画面で追加の構成は必要ありません。 「Finish」をクリックします。

image

 

トピックに戻る

トピック・リストに戻る

アプリケーション・コードのインポート

チュートリアル・アプリケーションの内部で実行されるコードはあらかじめ提供されています。 Oracle Coherence*Webを介したHttpSessionキャッシングのためだけにOracle Coherenceを使用する場合、アプリケーション・レベルのコードを追加する必要はありません (アプリケーション・コード・レベルでOracle Coherenceを使用することもできますが、トピックが異なるためこのチュートリアルでは取り上げません)。 このチュートリアルで使用するコードは、次に説明するとおり、HttpServletとJSPを使用した簡単なコードです。

アプリケーション・コードのインポート

トピック・リストに戻る

チュートリアル用のアプリケーション・コードをインポートするには、以下の手順を実行し ます。

1.

コードを ダウンロードします。

 

2.

一時的な場所にファイルを解凍します。 この一時的な場所は$STARTER_SOURCEと 呼ばれます。


3.

EclipseのProject Explorerで「CoherenceWeb」プロジェクトを 開きます。

 

4.

CoherenceWeb」を右クリックし、「Import」 →「Import」の順に選択します。

 

5.

General」カテゴリを展開し、「File System」 を選択します。 「Next」をクリックします。

 

6. From directoryフィールドに$STARTER_SOURCE/tutorial_startと 入力し、移動します。
7.

tutorial_startを展開し、srcフォルダとWebContentフォ ルダの横にあるチェック・ボックスのみを選択します。
(tutorial_startの横にあるチェック・ボックスは選択しないでください。tutorial_startの横には緑のチェック・マークではな く緑の四角マークが表示されていることを確認してください。)

その他はすべてデフォルトのままで、「Finish」をクリックします。

 

8.

プロジェクト内のファイルを上書きするかどうかを尋ねるQuestionダイアログ・ボックスが表示されたら、「Yes To All」をクリックします。

 

9.

Java Resources/src/obe.coherence」 ツリーと「WebContent」ツリーを開きます。

 

10. Sourceビューで、SessionTest1.javaサーブレッ ト・コードとgetSessionValue1.jspコードを開きます。
11.

SessionTest1サーブレット内ですべての関数を実行するのはdoGet()メソッドであることに注目します。

  • 生成されたデータを見ただけでサーバーが識別できるように、サーバーのローカル・ポートを特定します。
  • String型のテスト値を作成し、サーバー・ポート(ID値)と現在のタイムスタンプを設定します(テスト値が作成された時間 を把握するため)。
  • テスト用のブラウザからHttpRequestを取得し、これに関連付けられた現在のHttpSessionに対してテスト値を 追加します。
  • テスト中にサーバーがアクションを実行した場合、どのサーバーであるかを特定できるように、WLSコンソール・ウィンドウに print文を送ります。
  • 最後にシンプルなHTMLページを作成し、サーブレットを呼び出すブラウザに送信します。 このページには、テスト用に作成されたデータの要約が含まれます。
protected void doGet(HttpServletRequest request, HttpServletResponse response) 
throws ServletException, IOException {
// Put a value in the session, use a String (which is Serializable) int serverPort = request.getLocalPort();
String testVal = "Test Value: " + serverPort + ":" + java.lang.System.currentTimeMillis();

// Add to the session
request.getSession().setAttribute("testVal", testVal);
System.out.println("\n Server: " + serverPort + ":: Attribute added to Session. " + testVal);
response.setContentType(CONTENT_TYPE);
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head><title>Oracle Coherence*Web Simple Test 1 - Session Data Loader</title></head>");
out.println("<body>");
out.println("<p>Simple Test 1 - Session Data Loader Servlet</p>");
out.println("<p>Server: " + serverPort + "</p>");
out.println("<p>This servlet loaded the following value as a Session Attribute: <code>" + testVal + "</code></p>");
out.println("</body></html>");
out.close();
}
12.

次に、getSessionValue1.JSPを確認します。 SessionTest1サー ブレットのコードとよく似ていますが、ここではテスト値を作成してセッションに追加する代わりに、セッション内にあらかじめ設定された値 (SessionTest1サーブレットが追加した値)を探します。

値が見つからない場合、JSPはテスト値をnullとして返します。 ここでもWLSコンソール・ウィンドウに文が出力されるため、どのサーバー上でJSPが実行されているかを特定できます。

<%@ page  contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<% String sessionVal = null; int thisServerPort = request.getLocalPort(); sessionVal = (String) session.getAttribute("testVal");

System.out.println("\nJSP on server " + thisServerPort + " has retrieved value " + sessionVal + " from current Session");
%> <html>
<head>
<meta
http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Oracle Coherence*Web Simple Test 1 - Session Data Retriever</title> </head>
<body>
  <p>The server that is running this JSP is on port: <%= thisServerPort %></p>
  <p>Value in Session is: <%= sessionVal %></p>
  </body>
</html>

 

13. EclipseのProblemsビューを表示し、エラーがないことを確認します。

トピックに戻る

トピック・リストに戻る

デプロイ向けのサーバー 構成の作成

Oracle Enterprise Pack for Eclipse拡張モジュールを利用すると、WebLogic Serverへのデプロイとテストが素早く簡単に実行できます。 ここでは、このチュートリアルの第1部で作成したOracle WebLogic Serverドメインに対して、サーバー・プロファイルを作成します。

Eclipseを使用した、Oracle WebLogic Serverの構成プロファイルの作成

トピック・リストに戻る

アプリケーションのデプロイとテストが簡単に実行できるように、Eclipseでサーバー構成を作成するには、以下の手順 を実行します。

1.

このチュートリアルの第1部で作成したドメインを起動します (ドメイン名はWLS_AWLS_Bで す。ドメインを起動するには、それぞれのルート・ディレクトリからstartWebLogic.cmdス クリプトを実行します)。

ドメインの開始時にエラーが発生していないことを確認します。

 

2.

Eclipseインスタンスの最下部にある「Servers」ビューをクリックします。


3.

Serversビューの内側を右クリックし、「New」→「Server」 の順に選択します。

 

4.

Oracle」カテゴリを展開し、「Oracle WebLogic Server 10gR3」を選択します。

サーバー名としてOracle WebLogic Server WLS_Aと 入力し、「Next」をクリックします。

 

 

5.

WLS_Aドメインの場所を選択したら、再度、名前をOracle WebLogic Server WLS_Aに変更します。

Finish」をクリックします。

Serversビューに表示されるサーバー・ステータスがStartedであることを確認します。

 

6.

ステップ1~5を繰り返します。今回は、サーバー名としてOracle WebLogic Server WLS_Bを設定し、WLS_Bドメインの場所を指定します。

 

7.

両方のサーバー・プロファイルの作成が完了したら、ServersビューのステータスがStartedに なっていることを確認します。

 

トピックに戻る

トピック・リストに戻る

Oracle Coherenceを有効化していない場合のアプリケーションのデプロイとテスト

Oracle Coherence*Webのサポートを有効化する前に、そのままの状態でアプリケーションを実行します。こうすることで、Oracle WebLogicのネイティブ・セッション処理とOracle Coherence*Webのセッション・キャッシュの違いがよく理解できます。

アプリケーションのテスト

サーバーにアプリケーションをデプロイするには、以下 の手順を実行します。

1.

WLS_Aサーバーへアプリケーションをデプロイします。

Serversビューで「Oracle WebLogic Server WLS_A」を右クリッ クし、「Add and Remove Projects」を選択します。

 

2.

Add All」ボタンをクリックして、WLS_AConfigured projectsにアプリケーションを追加したら、「Finish」をクリックしてサーバーにアプ リケーションを公開します。


3.

WLS_Aサーバー・ウィンドウにエラーが表示されておらず、EclipseのServers ビューに表示されるWLS_AのステータスがSynchronizedであること を確認します。

 

4.

WLS_Bサーバーに対して、ステップ1~3を繰り返します。

 

トピックに戻る

ア プリケーションをテストするには、以下の手順を実行します。

1.

Webブラウザを開き、WLS_ASessionTest1サー ブレットへ接続します (WLS_Aのポート番号は7001であり、WLS_Bのポート番号は7201です)。

http://localhost:7001/CoherenceWeb/SessionTest1

ブラウザに表示されるデータとWLS_Aのコンソール・ウィンドウに表示されるデータを確認します。

image

 

2.

新規ブラウザ・ウィンドウまたは新規タブを開き、WLS_AgetSessionValue1.jspへ接続します。

http://localhost:7001/CoherenceWeb/getSessionValue1.jsp

ブラウザに表示されているデータが、SessionTest1サーブレットによって表示されたデータと一致することを確認します。 "JSPを実行しているサーバー"として表示されるポートは7001であり、テスト値の最初の 4桁も7001であることに注目します。 これは、この値を作成したサーバーがWLS_Aであることを示しています。

image

また、WLS_Aコンソール・ウィンドウには、JSPを実行したことを示す文が表示されます。

image


3.

別のブラウザ・ウィンドウまたはタブを開き、WLS_BJSPサー ブレットではありません)へ接続します。

http://localhost:7201/CoherenceWeb/getSessionValue1.jsp

今回は、戻り値がnullであることを確認します。 これはどういった理由からでしょうか。

image

この時点では、2つのWebLogic Serverは互いとは完全に独立した状態にあります。 まったく同じアプリケーションを実行していても、互いのアクティブ・セッションをつなぐものは何も存在しません。 ステップ3でWLS_Bに対して作成した接続は、完全に新規のHttpSessionであり、WLS_Bに対してのみ関連付けられています。

このチュートリアルの第1部で、2つのドメインにOracle Coherence*WebのSPIライブラリを追加しましたが、それだけでは不十分なのでしょうか。

Oracle WebLogic Serverで、Oracle WebLogicのネイティブ・セッション・キャッシュの代わりにOracle Coherence*Webのセッション・キャッシュを使用するには、アプリケーションのデプロイメント・ディスクリプタに構成変更を追加する必要があり ます。 ドメインへのライブラリ追加は、このプロセスの一部分に過ぎません。

 

4.

ブラウザ・ウィンドウを終了します。

 

トピックに戻る

トピック・リストに戻る

 

アプリ ケーションでのOracle Coherence*Webサポートの有効化

Oracle Coherence*Webを使用するために必要な構成変更には、次の2段階の手順があります。

bullet 必要なライブラリのアプリ ケーションへの追加

トピック・リストに戻る

coherence-web-spi.war共 有ライブラリをWebアプリケーションから参照するには、以下の手順を実行します。

1.

weblogic.xmlファ イルに共有ライブラリ参照を追加します。

EclipseのProject Explorerビューで、Oracle Coherence*WebアプリケーションのWebContent/WEB-INFフォ ルダを開きます。

weblogic.xmlファイルを Sourceビューで開きます。

bullet

 

2.

Sourceビュー下部の「Source」タブをクリックし、 次のコードをディスクリプタに追加します(末尾にある</wls:weblogic-web-app>の 上に追加)。

<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>

bullet

ファイルを保存します。

 

3.

Window」→「Preferences」→「WebLogic」 →「Shared Libraries」の順に選択したら、「Add」をクリック します。

bullet

 

4.

$COHERENCE_HOME\lib\coherence-web-spi.warファ イルを選択します。 「OK」をクリックします。

bullet

 

5.

Preferencesダイアログ ボックスで、再度「OK」 をクリックします。

bullet

 

6.

WLS_AドメインとWLS_Bドメインの両方で、$DOMAIN_HOME\libフォルダに$COHERENCE_HOME\lib\coherence.jarファイルをコピーしておく必要があ ります。コピーが完了していない場合、ここでコピーを実行します。

 

トピックに戻る

Oracle Coherence*Webを有効化した場合のアプリケーションのデプロイとテスト

ここまでで、チュートリアル用のアプリケーションに対するOracle Coherence*Webの構成の適用が完了したので、次はサーバーにアプリケーションをデプロイしてテストを再実行します。WebLogic Serverのネイティブ・セッション・キャッシュとOracle Coherence*Webのセッション・キャッシュにおける動作の違いを比較してみましょう。

bullet アプリケーションのデプロイ とテスト

トピック・リストに戻る

Oracle Coherence*Webを有効化し、アプリケーションをテストするには、以下の手順を実行します。

1.

このチュートリアルの第1部で作成した$COHERENCE_HOME\bin\web-cache-server.cmdス クリプトを実行して、Oracle Coherenceのキャッシュを起動します。

 

2.

いずれのサーバー・インスタンスについても、EclipseのServersビューに表示される現在のステータスが"Republish" であることに注意します。 これは、コードを更新したために、Eclipse内のコードとOracle WebLogic Serverにデプロイされたコードの間で不一致があるためです。

bullet

 

各サーバー上で右クリックして、「Publish」を選択します。

 

今回は、アプリケーションがデプロイされる間、Oracle WebLogic Serverのコンソール・ウィンドウとOracle Coherenceのキャッシュ・サーバー・ウィンドウの両方にアクティビティが表示されます。 アプリケーションがデプロイされたことで、このアプリケーションに対するOracle Coherence*Webのサポートが有効化されたため、Oracle Coherenceのクラスタが形成されました。

 

3.

再度ブラウザを開き、WLS_A上のサーブレットをテストします。

http://localhost:7001/CoherenceWeb/SessionTest1

結果は当然ながら、前回のテストと同じものになります。 ポート7001で 実行されているWLS_Aによって、ポート番号と現在のタイムスタンプが含まれた文字列が作成され、HttpSessionに追加されます。

 

4.

次に、前回と同様にWLS_A上のJSPをテストします。

http://localhost:7001/CoherenceWeb/getSessionValue1.jsp

このテストも、前回のテストとまったく同じ結果になります。 セッション値は、同じサーバー上の同じセッション内で実行されているサーブレットによって追加されているため、この値をWLS_A上のJSPから取得する ことができます。

 

5.

次に、WLS_B上のJSPをテストします。

http://localhost:7201/CoherenceWeb/getSessionValue1.jsp

結果の値はWLS_A上で作成されたものであり、WLS_Aのみに存在したセッションに配置されたものですが、今回はWLS_B上の JSPからもこの値を取得することができます。 これは、Oracle Coherence*Webが機能しているためです。

このシンプルなチュートリアルでは、完全に独立した2つのアプリケーション・サーバーにまったく同じようにアプリケーションをデプロイ し、サーバー間でのセッションの共有を可能にする様子を確認しました。 実際のケースでは、地理的に何千マイルも離れた2つの個別クラスタ間でこれを実現することも可能です。 しかし、このテストで行ったように、同じアプリケーションに対して手動でサーバーを切り替えることは決して一般的ではありません。 実際は、ロードバランサと呼ばれるエンティティを介してアプリケーションが提供されます。ロードバランサについては、このチュートリアルの最後の部分で説 明します。

 

トピックに戻る

トピック・リストに戻る

ソフ トウェア・ロードバランサを使用したテスト

先ほど説明したとおり、独立したサーバー・インスタンス間での切り替えをユーザーが手動で行うことは現実ではあ りえません。 通常は、どのサーバーのユーザー負荷がもっとも少ないかといった基準に基づいて、自動的にユーザーが所定のサーバーにルーティングされます。 また、サーバーに障害が発生した場合は、ユーザーにそれを知られることなく代替サーバーやバックアップ・サーバーにルーティングすることが理想的です。 これを実現するのがロードバランサです。

ユーザーにとっての実際の接続先はロードバランサであり、各サーバーへのルーティングはロードバランサによって 水面下で実施されます。 上記のテストのように、使用されているポート番号がユーザーに表示される場合、ユーザーの接続先はロードバランサのポートになり、実際のサーバーのポート が表示されることはありません。

Oracle Coherenceにはソフトウェアベースのシンプルなロードバランサが同梱されており、簡単な開発テストに使用できます。 ここでは、実際にこのロードバランサを使用して再度アプリケーションのテストを行います。

このトピックでは、Oracle Coherenceに同梱されているシンプルなロードバランサを使用して最後のテストを実施します。このテストを通じて、Oracle Coherence*Webを有効化したアプリケーションが、実環境でどのようにアクセスされるかを説明します。

bullet ロードバランサの起動と最終テストの 実施

トピック・リストに戻る

シンプルなロードバランサを使用してアプリケー ションをテストするには、以下の手順を実行します。

1.

新しいコマンドライン・ウィンドウを開き、$COHERENCE_HOME\libへ 移動します。

 

2.

ロードバランサを起動するための構文は次のとおりです。

java -jar coherence-loadbalancer.jar <LoadBalancerAddr:PORT> <LBTargetAddr:PORT> <LBTargetAddr:PORT>

<LoadBalancerAddr>はロードバランサ自体の IPまたはDNS名であり、続いてコロンとそのポート番号を指定します。 このテストで使用するロードバランサのポート番号は8080です (使用するシステム上の別のアプリケーションによってこのポート番号がすでに使用されている場合、任意の番号を使用して構いませんが、70017201は使用しないでくださ い)。

<LBTargetAddr>はロードバランシングされる対象 のエンティティであり、ここではWLS_AおよびWLS_Bになります。 それぞれのポート番号は、このチュートリアルを通じて使用されたポートと一致させる必要があります。具体的には、WLS_Aに は7001を指定し、WLS_Bには7201を指定します。

したがって、実行するコマンドは以下のようになります。

java - jar coherence-loadbalancer.jar localhost:8080 localhost:7001 localhost:7201

コマンドを実行しても応答やフィードバックがない場合がありますが、 このことは問題ありません。

bullet

 

3.

Webブラウザを開き、サーブレットをテストします。 今回は70017201ではなく、ロードバランサのポート番号(8080) を使用する点に注意してください。

http://localhost:8080/CoherenceWeb/SessionTest1

ロードバランサのコンソールにアクティビティが表示されます。

bullet

いずれかのWLSインスタンスが応答したことを示すメッセージがJSPに表示されます。 ブラウザに出力されたメッセージにはポート番号として7001または7201が表示されますが、アドレス・バーには8080が 表示されます。 ロードバランサに接続した後で、リクエストがいずれかのサーバーにルーティングされたことが分かります。

 

4.

ロードバランサのポート番号を使用して、再度JSPに接続します。

http://localhost:8080/CoherenceWeb/getSessionValue1.jsp

ロードバランサによってルートが記録されますが、今回は7201が使用されていることに注目します。 これは、Oracle Coherenceのロードバランサがラウンドロビン法に基づいてロードバランシングを行っているためです。つまり、登録されているロードバランス・ター ゲットが順に使用されます。

bullet

JSPの出力を確認すると、JSPは7201で実行されているが、取得し た値は7001(WLS_A)で作成されたことが分かります。

このチュートリアルでは、独立した2つのOracle WebLogic Serverインスタンス間でHttpSession情報を共有し、ロードバランサを通じてクライアント・アクセスを提供する例について確認しました。 Oracle WebLogic Serverのインスタンスを200に増やした場合も、すべてのインスタンスで同じアプリケーションを実行してOracle Coherence*Webを有効化すれば、まったく同じような結果が得られるでしょう。

5.

Oracle WebLogic Serverドメインからアプリケーションをアンデプロイし、ドメインおよびOracle Coherenceのキャッシュ・サーバー・インスタンスを停止します。

 

トピックに戻る

トピック・リストに戻る

このチュートリアルはOracle WebLogic ServerでOracle Coherence*Webを使用する方法について簡単に説明したものですが、実用的な開発環境を稼働させる十分な基盤となります。

このレッスンで学習した内容は次のとおりです。

トピック・リストに戻る

Oracle Coherence*Webの詳細については、下記のWebサイトを参照してください。

bullet
bullet
bullet
bullet
bullet

トピック・リストに戻る

このアイコンの上にカーソルを置くと、すべてのスクリーンショットが 非表示になります。