JMSキューとJMSトピックの構成

このチュートリアルでは、Oracle WebLogic ServerインスタンスにおけるJava Message Service(JMS)キューとJMSトピックの構成手順を説明します。 このチュートリアルに沿って学習することで、以下の実行方法を学べます。

 

約30分

トピック

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

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

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

スクリーンショットは、Oracle WebLogic Server機能の構成および管理方法について学習するための参考用に提供されており、特定の環境における表示とは異なる場合があります。

概要

JMSサーバーは、WebLogicサーバーにJMSインフラストラクチャ機能を実装します。 送信先(キューまたはトピック)は、JMSサーバーが構成されたWebLogicサーバーをターゲットにしています。
このチュートリアルでは、まずJMSサーバー、キュー、トピックの構成方法について学習します。 次に、参考として、メッセージをキューとトピックにポストし、管理コンソールでそれらを監視します。

トピック・リスト に戻る

シナリオ

あなたはDizzyworld Corporationのアプリケーション・サーバー管理者であり、Oracle WebLogic Serverをインストールおよび構成していると仮定します。 Oracle WebLogic Serverをインストールおよび構成する方法については、次のOBEを参照してください。

Dizzyworldのシステム・アーキテクトは、JMSサーバー(JMSキューおよびJMSトピック・リソー スによるJMSモジュール)を構成し、シンプルなmessaging.warアプリケーションをデプロイしてメッセージをキューとトピックにポストするこ とで、JMSサービスについて検討することを決断しました。

 

前提条件

タスクを開始する前に、システム環境が以下の前提条件を満たしていることを確認してください。

事前に学習する必要があるチュートリアル

このチュートリアルを始める前に、次のチュートリアルを完了している必要があります。

最小ハードウェア要件

項目 仕様
プロセッサ速度 1GHz
メモリ 2GB
ハードディスクの空き容量 1GB

ソフトウェア要件

次の製品がシステムにインストールされている必要があります。

Oracle WebLogic Server

タスクを実行するマシンにtest_jms.zip ファイルをダウンロードして保存し、コンテンツをローカル・ドライブに展開します。 このチュートリアルでは、/home/oracle/labs/wls103/testjmsフォルダにファイルを展開しています。 zipファイルには、次の2つのファイルが含まれています。

  ファイル名 説明
1. messaging.war 構成したJMSキューとJMSトピックをテストする ためのシンプルなWebアプリケーション・ファイル。
2. deploy_testjms.py Webアプリケーションをデプロイするために使用す るWLSTスクリプト。

 

トピック・リスト に戻る

ドメイ ンにおけるサーバー・インスタンスの起動

この場合の基本ドメインは、管理サーバーと管理対象サーバー(dizzy1)で構成されています。 2つのサーバーを起動するには、以下の手順を実行してください。

1.

シェル・ウィンドウを開き、ドメインを構成したフォルダ下のbinサブフォルダに移動します。以下に例を示します。

$ cd /u01/app/oracle/product/Middleware/user_projects/domains/dizzyworld/bin .

 

2.

startWebLogic.shスクリプトを実行し、管理サーバーを 起動します。

 

3.

Enter username to boot WebLogic server”と表示され たら、ドメインを作成する際に設定した管理ユーザー名を入力します。 このチュートリアルでは、次のスクリーンショットで示されているとおり、“admin”を使用します。 “Enter password to boot WebLogic server”と表示されたら、管理ユーザーのパスワードを入力します。

 

4.

これにより、管理サーバーが起動します。 このシェル・ウィンドウは閉じないでください。

 

5.

ドメインで管理対象サーバー(dizzy1)を起動するには、ほかのシェル・ウィンドウを開き、ドメインのbinサブフォルダに移動します。

 

6.

管理対象サーバーを起動するために、次のコマンドを実行します。

$ ./startManagedWebLogic.sh dizzy1 http://localhost:7001

 

7.

Enter username to boot WebLogic server”と表示された ら、ドメインを作成する際に設定した管理ユーザー名を入力します。 このチュートリアルでは、“admin”を使用します。 “Enter password to boot WebLogic server”と表示されたら管理ユーザーのパスワードを入力します。

 

 

8.

これにより、管理対象サーバーが起動します。 このウィンドウも閉じないようにしてください。

 

トピック・リストに戻る

管理コンソールを使用したJMSサーバーの構成

1.

管理コンソールにアクセスし、Domain Configurationsセクションの下の「JMS Servers」をクリックします。 次にChange Centerで「Lock & Edit」 をクリックします。

 

2.

JMS Servers表の下にある「New」をクリックし、新しいJMSサーバーを作成しま す。

 

3.

以下のプロパティを入力し、「Next」をクリックします。

Name dizzyworldJMSServer
Persistent Store (none)
4.

ターゲットJMSサーバーとして「dizzy1」を選択しま す。 「Finish」をクリックします。

 

5.

Activate Changes」をクリックし、変更を適用します。

 

トピック・リストに戻る

JMSキューとJMSトピックの構成

1.

管理コンソールで、「dizzyworld」→「Services」 →「Messaging」→「JMS Modules」の順にクリックします。 次に、Change Centerで「Lock & Edit」をクリックします。

 

2.

JMS Modules表で「New」をクリックし、以下のプロパティを入力します。「Next」 をクリックします。

Name dizzyworldModule
Descriptor File Name dizzyworldModule

 

3.

ターゲットとして管理対象サーバー「dizzy1」 を選択します。 「Next」をクリックします。

4.

Would you like to add resources to this JMS system module?」チェック・ボックスを選択し、「Finish」をクリックします。

 

5.

Settings for dizzyworldModuleページ で、「Subdeployments」タブをクリックします。

 

6.

Subdeployments表内の「New」をクリックしま す。 Subdeployment Nameとしてdizzysubmoduleを入力し、「Next」 をクリックします。

 

7.

TargetページのJMS Serversで、ターゲットとして「dizzyworldJMSServer」 チェック・ボックスを選択します。 「Finish」をクリックします。

 

8.

Configuration」タブをクリックします。

9.

Settings for dizzyworldModuleページの Summary of Resources表で、「New」をクリックし、JMSモジュール用の新しいJMSキューを 構成します。

 

10.

Create a New JMS System Module ResourceページのChoose the type of resource you want to createで、「Queue」を選択し、「Next」 をクリックします。

 

11.

JMS Destination Propertiesで、以下のパラメータを入力し、「Next」 をクリックします。

Name dizzyworldQueue
JNDI Name dizzyworldQueue
Template None

 

12.

Subdeploymentsリストから「dizzysubmodule」 を選択します。 「Finish」をクリックします。

 

13.

Settings for dizzyworldModuleページのSummary of Resourcesで、「New」 をクリックし、JMSモジュール用の新しいJMSトピックを構成します。

 

14.

Create a New JMS System Module Resourceページで、作成するリソースのタイプとして「Topic」 を選択します。「Next」をクリックします。

 

15.

JMS Destination Propertiesで、以下のパラメータを入力し、「Next」 をクリックします。

Name dizzyworldTopic
JNDI Name dizzyworldTopic
Template None

 

16.

Subdeploymentsリストから「dizzyworldsubmodule」 を選択します。 「Finish」をクリックします。

 

17.

Change Centerに戻り、「Activate Changes」 をクリックします。

 

18.

Homeに移動します。 HomeページのEnvironmentで、「Servers」をクリックし、 Summary of Serversに移動します。 サーバーの表内の「dizzy1」をクリックします。

 

19.

Settings for dizzy1ページで、「View JNDI Tree」をクリックします。

 

20.

JNDI Treeがほかのウィンドウ、またはタブで表示されます。 そのタブのdizzy1管理対象サーバーの下にあるdizzyworldQueuedizzyworldTopicの 2つのJNDIエントリを確認します。

 

トピック・リストに戻る

管理コンソールにおけるキューとトピックの表示のカスタマイズ

1.

管理コンソールにアクセスし、Domain ConfigurationsのServicesセクションで「JMS Modules」をクリックします。 JMS Modules表内の「dizzyworldModule」リンクをクリックします。

 

2.

Settings for dizzyworldModuleのConfigurationタブで、下方向にスクロールします。 Summary of Resources表内の「dizzyworldQueue」リンクをクリックします。

 

3.

Settings for dizzyworldQueueの「Monitoring」タブをクリックします。

4.

Monitoringページの「Customize this table」をクリックします。

 

5.

Availableから「Messages Total」を選択し、右矢印を クリックしてChosenに移動させます。 次に、「Apply」をクリックします。

 

6.

表内にMessages Total列が追加されたことを確認してください。

 

トピック・リストに戻る

JMSキューとJMSトピックの動作確認

1.

新しいシェル・ウィンドウを開き、messaging.warア プリケーションのあるフォルダ(例:/home/labs/wls103/testjmsフォ ルダ)に移動します。

 

2.

WL_HOME環境変数を設定し、WebLogic Server(WLS)10.3をインストールした場所を指定します。

 

3.

WL_HOME/server/bin/setWLSEnv.shスクリプ トを実行し、環境変数を設定します。

 

4.

java weblogic.WLST deploy_testjms.pyコ マンドを実行し、testds.warアプリケーションをデプロイします。

 

5.

Webブラウザを開き、http://localhost:7003/messagingに移動します。

アプリケーションを使用し、標準キューとトピックにいくつかのメッセージをポストします。 分散キューにはメッセージを追加しないでください。

 

6.

管理コンソールで、「dizzyworld」→「Services」 →「Messaging」→「JMS Modules」の順にクリックします。 JMS Modules表内の「dizzyworldModule」 リンクをクリックします。 Summary of Resources表内で「dizzyworldQueue」リン クをクリックし、「Monitoring」タブをクリックします。 Messages High列とMessages Total列にはゼロ以外の値が表示され、新しいメッセージの受信を示していることを確認してください。

 

7.

これらの手順を繰り返し、dizzyworldTopicに送られたメッセージ数を確認します。

注:(キューの場合とは異なり)トピックでは、Messages Highの値はゼロのままです。これは、トピックに接続しているコンシューマがなく、ポストされたメッセージがサーバーから自動的に削除されるためです。 キューの場合、メッセージは消費されるまでサーバー上に保存されます。

 

これで、このOBEは完了しました。

トピック・リストに戻る

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

このOBEチュートリアルについての質問は、OBE Discussion Forumに投稿してください。

トピック・リストに戻る

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