プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebLogic Server JMSリソースの管理
12c (12.2.1.3.0)
E90330-04
目次へ移動
目次

前
次

1 概要とロードマップ

この章では、『Oracle WebLogic Server JMSリソースの管理』の内容と構成について説明します。

この章の内容は次のとおりです。

ドキュメントのスコープおよび対象読者

このガイドは、JMSサーバー、スタンドアロンの宛先(キューとトピック)、分散宛先、接続ファクトリなどのOracle WebLogic Java Messaging Service (JMS)リソースの構成、管理、およびモニターを担当するシステム管理者を対象としています。

この情報は、本番フェーズにおける管理、モニター、およびパフォーマンス・チューニングについて取り扱います。ソフトウェア・プロジェクトの本番前の開発またはテスト・フェーズについては説明しません。

このドキュメントは、WebLogic Serverのシステム管理に精通している読者を対象としています。このガイドでは、WebLogic Server JMSの付加価値機能と、WebLogic Server機能とコンポーネントを使用してWebLogic JMSを本番環境で管理するための主要な情報を重点的に扱います。

このドキュメントの手引き

関連ドキュメント

このガイドには、JMS固有の構成および管理上の情報が含まれています。

WebLogic Serverアプリケーションの開発、デプロイメント、モニターの総合的な情報については、以下を参照してください。

  • 『Oracle WebLogic Server JMSアプリケーションの開発』は、WebLogic Serverを使用したJMS APIアプリケーションのプログラミング用ガイドです。

  • Oracle WebLogic Serverクラスタの使用のWebLogic Serverのクラスタリングの理解では、WebLogic Serverのクラスタリングの仕組みを説明しています。

  • 『Oracle WebLogic Serverへのアプリケーションのデプロイ』は、WebLogic Serverアプリケーションのデプロイに関するもっとも詳細なガイドです。スタンドアロンまたはアプリケーション・スコープのJMSリソース・モジュールに関する説明があります。

  • Oracle WebLogic Serverサーバー環境の管理のWebLogic永続ストアの使用方法では、システム全体を対象としたWebLogic永続ストアの利点と使用について説明します。

  • 『Oracle WebLogic Serverストア・アンド・フォワード・サービスの管理』では、JMSメッセージを使用したストア・アンド・フォワード・サービスの利点と使用について説明します。

  • 『Oracle WebLogic Server WebLogic Tuxedo Connectorの管理』では、任意の2つのメッセージング製品間にメッセージング・ブリッジを構成する方法と、それによって様々なリリースのWebLogic JMS実装間やWebLogic JMSと他のメッセージング製品間で相互運用性を実現する方法について説明します。

  • 『Oracle WebLogic Serverのパフォーマンスのチューニング』には、WebLogic Serverアプリケーションのパフォーマンスをモニターし、向上させるための情報が記載されています。WebLogic JMSで使用できる管理パフォーマンス・チューニング機能によって、JMSアプリケーションの能力を最大限に引き出す方法についても説明しています。

JMS管理者向けのサンプルとチュートリアル

JMSコードのサンプルとチュートリアルが用意されています。チュートリアルでは、JMSの構成、APIの使用方法、およびJMSの主要な開発タスクについて説明します。独自のシステムを構成する前に、まずJMSサンプルの一部またはすべてを実行することをお薦めします。

Avitek Medical Recordsアプリケーション(MedRec)とチュートリアル

MedRecはWebLogic Serverに付属したエンドツーエンドのサンプルJava EEアプリケーションであり、一元的で独立した医療記録管理システムをシミュレートします。MedRecアプリケーションを使用すると、患者、医師、および管理者が、様々なクライアントから患者のデータを管理できます。

MedRecはWebLogic ServerとJava EEの機能を例示し、Oracle推奨のベスト・プラクティスを重要点として示します。MedRecは、WebLogic Serverのインストール時に任意でインストールできます。MedRecはORACLE_HOME\user_projects\domains\medrecディレクトリから起動できます。ORACLE_HOMEは、Oracle WebLogic ServerをインストールしたときにOracleホームとして指定したディレクトリです。詳細は、『Oracle WebLogic Serverの理解』のサンプル・アプリケーションおよびサンプル・コードに関する項 を参照してください。

WebLogic Server配布キットのJMSサンプル

このリリースのWebLogic Serverでは、APIコードのサンプルをORACLE_HOME\wl_server\samples\server\examples\src\examples ディレクトリにオプションでインストールできます。ここで、ORACLE_HOMEはOracle Fusion Middlewareのホーム・ディレクトリを表します。

詳細は、『Oracle WebLogic Serverの理解』のサンプル・アプリケーションおよびサンプル・コードに関する項 を参照してください。

WebLogic Serverの付加価値JMS機能

WebLogic JMSには、JMS 1.1および2.0仕様で指定された標準JMS APIよりも高度なWebLogic JMS拡張APIが数多く用意されています。これらはhttp://www.oracle.com/technetwork/java/jms/index.htmlで取得できます(新しいウィンドウを開きます)。また、WebLogic JMSはWebLogic Serverプラットフォームに緊密に統合されているため、セキュリティで保護されたJava EEアプリケーションを構築し、それらをWebLogic Serverコンソールで容易にモニターおよび管理できます。XAトランザクションが完全にサポートされているだけでなく、クラスタ機能とサービス移行機能による高可用性を特長としています。さらに、他のリリースのWebLogic Serverやサード・パーティのメッセージ・プロバイダとの相互運用性も提供されます。

以下の節では、WebLogic JMSの一意かつ強力な機能について概説します。

エンタープライズ・レベルの信頼性

WebLogic JMSには、信頼性に関する以下の機能があります。

  • 即時使用可能なトランザクション・サポート:

    • JTA (Java Transaction API)の使用により、JMSアプリケーションとその他のトランザクション対応リソースの間のトランザクション(分散トランザクションを含む)を完全にサポート(Oracle WebLogic Server JMSアプリケーションの開発のWebLogic JMSによるトランザクションの使用方法を参照)。

    • 完全に統合されたトランザクション・マネージャ(Oracle WebLogic Server JTAアプリケーションの開発のトランザクションの概要を参照)。

  • ファイルまたはデータベースの永続メッセージ・ストレージ(どちらもXAトランザクションに完全対応)。WebLogic永続ストアの管理のWebLogic永続ストアの使用方法を参照してください。

  • メッセージのストア・アンド・フォワード(SAF)。この機能はクラスタ化可能で、利用不可能なリモートの送り先に送信されたメッセージをローカルに格納することにより信頼性を向上させます。『Oracle WebLogic Serverストア・アンド・フォワード・サービスの管理』のストア・アンド・フォワード・サービスの理解に関する項を参照してください。

  • サーバーまたはネットワークの障害が発生した場合、JMSプロデューサ・オブジェクトとコンシューマ・オブジェクトは別のサーバー・インスタンスに透過的にフェイルオーバーを試みます(使用可能なものがある場合)。Oracle WebLogic Server JMSアプリケーションの開発のJMSクライアントの自動フェイルオーバーを参照してください。

  • 複数のWebLogic Serverでターゲットとされる接続ファクトリを使用した接続クラスタリングのサポート。「WebLogic JMSクラスタリングの構成」を参照してください

  • クラスタで高可用性、ロード・バランシング、およびフェイルオーバー・サポートを提供する共通分散キュー、複製された分散トピック、およびパーティション化された分散トピックのシステム支援による構成。Oracle WebLogic Server JMSアプリケーションの開発の分散宛先の使用および高度なパブリッシュ/サブスクライブ・アプリケーションの開発を参照してください。

  • サーバー全体の自動移行。高度なクラスタの信頼性とサーバー移行機能を提供します。現在、WebLogic Serverでは、クラスタリングされたサーバー・インスタンスとそこでホストされるすべてのサービスについて、1つのマシンから別のマシンへの自動および手動での移行をサポートしています。「WebLogic JMSクラスタリングの構成」を参照してください

  • WebLogic JMSは、再起動準備完了を完全にサポートしており、障害が発生したファイル・ベースまたはJDBCベースのストアとその上位サービスを、サーバーの競合なしで自動的に再起動する再試行メカニズムを提供します。『WebLogic永続ストアの管理』の再起動準備完了に関する項を参照してください。

  • 失敗したメッセージや期限切れメッセージのエラー宛先へのリダイレクト。Oracle WebLogic Server JMSアプリケーションの開発のロールバックまたは回復されたメッセージ、再配信されたメッセージまたは期限切れメッセージの管理を参照してください。

  • JMS配信回数メッセージ・プロパティ(JMSXDeliveryCount)をサポート。このプロパティでは、メッセージの配信試行回数を指定できます。1回目の試行が1、2回目の試行が2 (以降同様)になります。WebLogic Serverでは、可能なかぎり配信回数を永続化することで、サーバーの再起動後に配信回数が1にリセットされないようにしています。Oracle WebLogic Server JMSアプリケーションの開発のメッセージを参照してください。

  • 3つのレベルでのロード・バランシングが可能です。ネットワーク・レベル、JMS接続、および分散宛先におけるロード・バランシングができます。

エンタープライズ・レベルの機能

WebLogic JMSに備わっているエンタープライズ・レベルの機能は以下のとおりです。

  • WebLogic Serverは、JMS 1.1およびJMS 2.0仕様(http://www.oracle.com/technetwork/java/jms/index.htmlで参照可能。新しいウィンドウを開きます)を完全にサポートし、Java EE 7.0仕様に準拠します。また、標準JMS APIよりも高度なWebLogic JMS拡張が数多く用意されています。

  • メッセージおよび宛先の堅牢な管理機能を提供します。

    • 管理者は、WebLogic Server管理コンソールまたは実行時APIを使用して、実行中のJMSサーバーのほとんどのメッセージを操作可能です。「JMSメッセージの管理」を参照してください

    • 管理者は、WebLogic Server管理コンソールまたは実行時APIを使用して、所定のJMS宛先または単一のJMSサーバーでホストされるすべての宛先においてメッセージの生成、挿入(処理中のメッセージ)、および消費操作の休止と再開を行うことができます。「宛先でのメッセージ処理の制御」を参照してください

    • メッセージドリブンBeans (MDBs)、EJBでもメッセージの休止および再開機能が提供され、エラー状態での自動的な一時休止も可能です。Oracle WebLogic ServerメッセージドリブンBeanの開発のMDBのプログラミングと構成の詳細を参照してください。

  • JMSリソースのモジュール形式のデプロイメント。eXtensible Markup Language (XML)ファイルで定義されます。これにより、エンタープライズ・アプリケーション・ファイルを開いたり、手動によるJMSの膨大な再構成を行う必要なしに、アプリケーションおよび必要なJMS構成をある環境から別の環境に移行できます。「JMSモジュールの概要」を参照してください

  • JMSメッセージ・プロデューサは順序付けされたメッセージを単一の順序単位にグループ化できます。これにより、このようなすべてのメッセージが作成された順序で確実に連続処理されます。『Oracle WebLogic Server JMSアプリケーションの開発』のメッセージ順序単位の使用に関する項を参照してください。

  • メッセージ順序単位機能よりもさらに限定的なグループを定義するため、メッセージ作業単位(UOW)機能があります。これによってJMSプロデューサは特定のメッセージをUOWメッセージ・グループのコンポーネントとして識別でき、JMSコンシューマでもそうしたメッセージをそのようなものとして処理できます。たとえば、JMSプロデューサでメッセージが1つの単位として処理されるように、1つのクライアントに中断なしで配信する必要のあるメッセージの集合を指定できます。Oracle WebLogic Server JMSアプリケーションの開発の作業単位メッセージ・グループの使用を参照してください。

  • メッセージ・ライフ・サイクルのロギング。この機能を利用すると、管理者はJMSサーバーの観点から、具体的にはメッセージの生成、消費、削除などの基本的なライフ・サイクル・イベントによって、JMSメッセージの存在をより正確に把握できるようになります。「メッセージ・ライフ・サイクルのロギング」を参照してください

  • スケジュールされたメッセージ配信用のタイマー・サービスを使用できます。Oracle WebLogic Server JMSアプリケーションの開発のメッセージ配信時間の設定を参照してください。

  • 柔軟な期限切れメッセージ・ポリシーで期限切れメッセージを処理できます。Oracle WebLogic Serverのパフォーマンスのチューニングの期限切れメッセージの処理を参照してください。

  • XMLを含むメッセージをサポートします。Oracle WebLogic Server JMSアプリケーションの開発のXMLセレクタ・メソッドを使用したXMLメッセージ・セレクタの定義を参照してください。

  • WebLogic Thin T3クライアントjar (wlthint3client.jar)は、wlfullclient.jarおよびwlclient.jar (IIOP)リモート・クライアントjarにかわる軽量の高性能な機能です。Thin T3クライアントは、クライアントの使用に適したAPIリッチ・セットへのアクセスを提供しながら、フットプリントは最小限で済みます。詳細は、Oracle WebLogic Serverスタンドアロン・クライアントの開発のWebLogic Thin T3クライアントの開発を参照してください。

  • JMS SAFクライアント。この機能を使用することで、(ネットワーク接続障害などが原因で) JMSクライアントが一時的に宛先にアクセスできない場合でも、JMSクライアントはサーバー側のJMS宛先にメッセージを確実に送信できるようになります。サーバーとの接続が切断されている間、JMS SAFクライアントによって送信されたメッセージはクライアント上でローカルに格納され、クライアントが再接続するときに、サーバー側のJMS宛先に転送されます。Oracle WebLogic Serverスタンドアロン・クライアントの開発のJMS SAFクライアントによる確実なメッセージ送信を参照してください。

  • JMS resource-referenceプーリングによる、サーバー側アプリケーション内のJMSクライアント・リソースの自動プーリング。サーバー側アプリケーションで標準JMS APIを使用しながら、リソースを自動的にプーリングできます。Oracle WebLogic Server JMSアプリケーションの開発のEJBとサーブレットにWebLogic JMSを使用するための拡張Java EEサポートを参照してください。

パフォーマンス

WebLogic JMSには、自動的なメッセージ・ページング、メッセージ圧縮、およびXMLメッセージ用のDocument Object Model (DOM)のサポートなどを含む、次のようなエンタープライズ・クラスのパフォーマンス機能があります。

  • WebLogic Serverは高度に最適化されたディスク・アクセス・アルゴリズムや他の内部拡張を使用して、JMSベースおよびWebサービスのメッセージングのパフォーマンスを向上させる統一されたメッセージング・カーネルを提供しています。『Oracle WebLogic Serverサーバー環境の管理』のWebLogic永続ストアの使用に関する項を参照してください。

  • 一方向メッセージ送信を使用すると、一般的な非永続メッセージングのパフォーマンスが大幅に改善される可能性があります。接続ファクトリに構成されている場合、関連するプロデューサはターゲット宛先のホストJMSサーバーからのレスポンスを内部的に待機せずに、メッセージを送信できます。キュー・センダーおよびトピック・パブリッシャに一方向送信を許可したり、この機能をトピック・パブリッシャのみに制限したりできます。「一方向ウィンドウ・サイズ」を指定して、追加の一方向送信を続行する前に、プロデューサを制御するために双方向メッセージが必要になる時期を決定することもできます。Oracle WebLogic Server管理コンソール・オンライン・ヘルプ接続ファクトリのフロー制御の構成を参照してください。

  • 負荷ピーク時に仮想メモリーを自動的に解放するメッセージ・ページング。Oracle WebLogic Serverのパフォーマンスのチューニングのメッセージのページングによるメモリーの解放を参照してください。

  • 管理者は、WebLogic Server管理コンソールまたは実行時APIを使用して、指定したしきい値サイズを超えるメッセージを圧縮することにより、Java仮想マシン(JVM)の境界を超えて移動するメッセージの送信パフォーマンスを向上できます。Oracle WebLogic Serverのパフォーマンスのチューニングのメッセージの圧縮を参照してください。

  • WebLogic Server管理コンソールまたは実行時APIを使用して、コンシューマのJMS接続ファクトリの「同期コンシューマのプリフェッチ・モード」オプションを有効にすることにより、同期コンシューマでも非同期コンシューマと同じ効率的な動作を利用できます。Oracle WebLogic Server JMSアプリケーションの開発のプリフェッチ・モードを使用した同期メッセージ・パイプラインの作成を参照してください。

  • JMSメッセージ用に、様々なパフォーマンス・チューニング・オプションがあります。Oracle WebLogic ServerのパフォーマンスのチューニングのWebLogic JMSのチューニングを参照してください。

  • 単一トランザクションで複数のメッセージを処理することによってサポートされるMDBトランザクションのバッチ処理があります。Oracle WebLogic ServerメッセージドリブンBeanの開発のメッセージドリブンBeanでのバッチの使用を参照してください。

  • JMS SAFにより、クラスタ間に渡るWebLogicメッセージング・ブリッジ以上のパフォーマンスが実現します。Oracle WebLogic ServerのパフォーマンスのチューニングのWebLogic JMSのストア・アンド・フォワードのチューニングを参照してください。

  • DOM (Document Object Model)によるXMLメッセージ送信のサポートにより、アプリケーションでXMLメッセージの送信前にDOMをフラット化する必要がなくなるため、すでにDOMを使用している実装のパフォーマンスが大幅に向上します。Oracle WebLogic Server JMSアプリケーションの開発のXMLメッセージの送信を参照してください。

  • 負荷ピーク時のメッセージ・フロー制御。過度にアクティブな送信者のブロックもできます。Oracle WebLogic ServerのパフォーマンスのチューニングのJMSサーバーおよび宛先のメッセージのフロー制御と割当ての定義を参照してください。

  • JMS resource-referenceプーリングを使用したJMSラッパーによる接続および他のオブジェクトの自動的なプーリング。Oracle WebLogic Server JMSアプリケーションの開発のEJBとサーブレットにWebLogic JMSを使用するための拡張Java EEサポートを参照してください。

  • メッセージのマルチキャスト。IPマルチキャストを使用して多数のクライアントに同時配信できます。Oracle WebLogic Server JMSアプリケーションの開発のWebLogic JMSでのマルチキャストの使用方法を参照してください。

WebLogic Serverとの緊密な統合

WebLogic JMSは、WebLogic Serverとの緊密な統合を実現するため、以下の機能を備えています。

  • 宛先を同じサーバーにアプリケーションとして配置できるため、サーバー側アプリケーションからJMSにネットワーク呼び出しなしでローカルにアクセス可能です。

  • WebLogic Serverと同じポート、プロトコル、ユーザーIDを使用(T3、IIOP、およびHTTPトンネリング・プロトコル、必要に応じてSecure Socket Layer (SSL))。

  • WebLogic Serverによって提供されるWebサービス、Enterprise Java Beans (MDBを含む)、およびサーブレットをJMSと緊密に連携させることが可能です。

  • 同じWebLogic Server管理コンソール、またはJMS APIを使用して構成とモニターが可能です。

  • WebLogic Scripting Tool (WLST)のサポートにより、対話形式で、または実行可能なスクリプトを使用して構成の変更の開始、管理、および永続化が可能です。「WLSTを使用したJMSサーバーとJMSシステム・モジュール・リソースの管理」を参照してください。

  • 完全なJava Management Extensions (JMX)の管理APIとモニターAPIを提供します。『Oracle WebLogic Server JMXによるカスタム管理ユーティリティの開発』を参照してください。

  • 完全に統合されたトランザクション・マネージャ(Oracle WebLogic Server JTAアプリケーションの開発のトランザクションの概要を参照)。

  • WebLogic Serverに組み込まれた高度なセキュリティ・モデル(ポリシー・エンジン)を利用します。Oracle WebLogic Serverロールおよびポリシーによるリソースの保護のWebLogicセキュリティの理解とポリシーで保護できるリソースのタイプを参照してください。

他のメッセージング・サービスとの相互運用性

WebLogic JMSは、他のメッセージング・サービスとの相互運用性のため、以下の機能を備えています。

  • 以前のリリースのWebLogic Serverとの直接の相互運用を完全にサポートします。Oracle WebLogic Serverインフォメーション・ロードマップのWebLogic Serverの互換性を参照してください。

  • WebLogicメッセージング・ブリッジにより、トランザクションを介してメッセージを他のJMSプロバイダへ転送します。WebLogic JMSの他のインスタンスやリリースへも同様に転送します。『Oracle WebLogic Server WebLogicメッセージング・ブリッジの管理』を参照してください。

  • 他のJMSプロバイダのマッピングをサポートします - これにより、他のJMSプロバイダのオブジェクトがWebLogic JNDIツリーにローカルJMSオブジェクトとして表示されます。ローカルのJava Naming and Directory Interface (JNDI)ツリー内の他のクラスタまたはドメインで、WebLogic Serverのリモート・インスタンスも参照してください。「外部サーバーの構成」を参照してください

  • MDBを使用することで、複数のJMSプロバイダからのメッセージをトランザクションとして受信可能です。Oracle WebLogic ServerメッセージドリブンBeanの開発のMDBのプログラミングと構成の詳細を参照してください。

  • トランスポートとしての、WebサービスとJMSの信頼できる統合を提供します。Oracle WebLogic Server JAX-RPC Webサービスの高度な機能のプログラミングのWebサービスの信頼性のあるメッセージングの使用を参照してください。

  • JMS resource-referenceプーリングを使用した、サーバー側アプリケーション内の非WebLogic JMSクライアント・リソースの自動トランザクション登録を提供します。Oracle WebLogic Server JMSアプリケーションの開発のEJBとサーブレットにWebLogic JMSを使用するための拡張Java EEサポートを参照してください。

  • WebLogic Tuxedo Connectorで提供されるOracle Tuxedoメッセージングとの統合を提供します。Oracle WebLogic Server WebLogic Tuxedo Connectorの管理のOracle Tuxedoキュー・ブリッジの構成方法を参照してください。

  • Weblogic JMS C APIにより、「C」で記述されたプログラムがJMSアプリケーションに参加可能です。このJMS C APIの実装では、Java仮想マシン(JVM)へのアクセスにJNIを使用します。Oracle WebLogic Server JMSアプリケーションの開発のWebLogic JMS C APIを参照してください。

  • Oracle Streams Advanced Queuing (AQ)を使用して、データベース統合型メッセージ・キューイング機能を提供します。この機能は、Oracleデータベース機能を利用してメッセージを管理します。WebLogic Serverは、WebLogic Serverドメインで外部JMSおよびJava Database Connectivity (JDBC)データ・ソース構成を使用して、Oracle AQを相互運用します。ローカル/リモートJMSクライアントの両方がWebLogic JNDIからOracle AQ宛先を使用できます。「Oracle AQ JMSとの相互運用」を参照してください

JMSに関する新機能と変更された機能

この項では、WebLogic Serverの次以降のリリースのための新機能と変更された機能について説明します。

WebLogic Serverのこのリリースに追加された新機能の一覧については、「Oracle WebLogic Serverの新機能」 12.2.1.3.0を参照してください

WebLogic Server 12.2.1の新しく変更された機能

このリリースには、次の新しい機能と変更された機能が含まれています。