ナビゲーションをスキップ.

WebLogic Integration ソリューションのデプロイメント

  前 次 vertical dots separating previous/next from contents/index/pdf 目次  

はじめに

このドキュメントでは、プロダクション環境に BEA WebLogic Integration ソリューションをデプロイする方法について説明します。以下の節では、組織で WebLogic Integration をデプロイする場合の主要な概念と操作について説明します。

このドキュメントでは、WebLogic Integration ソフトウェアのライフサイクルのデプロイメント フェーズについてのみ説明します。一般的な WebLogic Platform アプリケーションのソフトウェア ライフサイクルにおけるデプロイメントに関する詳細については、「WebLogic Platform アプリケーションのデプロイメント」を参照してください。

WebLogic Integration アプリケーションの開発については、次の URL にあるドキュメントを参照してください。

http://edocs.co.jp/e-docs/wli/docs81/index.html

WebLogic Integration アプリケーションのビルド、コンフィグレーション、デプロイに使用できるサンプル ソースおよびユーティリティについては、WebLogic Integration の「ソリューション サンプル」および以下の URL にある BEA dev2dev コードライブラリに含まれる PO Sample を参照してください。

http://dev.bea.com/code/wli.jsp

注意 : コード サンプルおよびユーティリティは dev2dev に掲載されていますが、BEA のサポート対象外の製品です。

 


デプロイメントの目標

WebLogic Integration は、新しいアプリケーションの開発、既存システムへの統合、ビジネス プロセスの合理化、およびトレーディング パートナとの連携に使用できる機能を備えた、統一プラットフォームです。WebLogic Integration ソリューションをデプロイする場合、以下の目標を考慮します。

WebLogic Integration のデプロイメントでは、常にこれらの目標を達成できます。

 


主要なデプロイメントの作業

WebLogic Integration のデプロイメントでは、以下の作業の一部または全部を完了する必要があります。

  1. デプロイメントの目標」を参照して、WebLogic Integration デプロイメントの目標を定義します。
  2. WebLogic Integration アプリケーションをクラスタにデプロイします。そのためにはまず、クラスタを設計する必要があります。設計を始める前に、WebLogic Integration デプロイメントのコンポーネントを理解してください。「WebLogic Integration クラスタについて」では、アプリケーションに最適な環境を設計するのに役立つコンポーネントを説明しています。
  3. WebLogic Integration アプリケーションをクラスタ化した環境にデプロイすると、可用性が高まります。これには、「クラスタ デプロイメントのコンフィグレーション」の説明に従って、アプリケーションを設定する必要があります。
  4. WebLogic Integration セキュリティの使用」の説明に従って、WebLogic Integration デプロイメントのセキュリティを設定します。

WebLogic Platform アプリケーションに関連付けられたデプロイメント タスクの詳細な一覧については、『WebLogic Platform アプリケーションのデプロイメント』の「デプロイメント チェックリスト」を参照してください。

 


Integration ソリューションのデプロイメントにおける役割

統合型ソリューションを正しくデプロイするためには、デプロイメント チームに、以下の役割を果たすメンバーを加える必要があります。

一人で複数の役割を兼任することもできます。デプロイメントのすべてのシナリオに全員が等しく関わることはありませんが、正しくデプロイするためには、各担当者の参加が必要です。

デプロイメント スペシャリスト

デプロイメント スペシャリストは、デプロイメント作業を調整します。デプロイメント スペシャリストには、WebLogic Integration 製品の機能に精通していることが要求されます。デプロイメント スペシャリストは、1 つまたは複数のサーバにさまざまな WebLogic Integration 機能をコンフィグレーションしてきた経験を基に、専門知識を生かして、統合型ソリューションのデプロイメント トポロジを設計します。デプロイメント スペシャリストには、以下の分野の経験が要求されます。

WebLogic Server 管理者

WebLogic Server 管理者は、組織内の WebLogic Server デプロイメントに関する技術と操作について深い知識を持っていることが要求されます。ハードウェアとプラットフォームの知識を持ち、WebLogic Server のインストール、コンフィグレーション、モニタ、セキュリティ、パフォーマンス チューニング、トラブルシューティングなど、WebLogic Server デプロイメントのすべての管理作業に対する経験が要求されます。

データベース管理者

データベース管理者は、組織内にデプロイされたデータベース システムに関する技術と操作について深い知識を持っている必要があります。データベース管理者には、以下の分野の知識が要求されます。

 


主要なデプロイメントのリソース

この節では、デプロイメントの段階で変更可能なリソースの概要を示します。

注意 : 「リソース」という用語は、このドキュメントでは、主に技術的な資産を指します。「WebLogic Integration セキュリティの使用」では、例外的に、セキュリティ ロールとセキュリティ ポリシーを使用して、無許可のアクセスから保護する基本的な WebLogic Server エンティティのことのみを指します。

WebLogic Server リソース

この節では、WebLogic Integration ソリューションのデプロイメントに深く関係する WebLogic Server リソースの一般情報を示します。これらのリソースは、WebLogic Server 管理コンソールや EJB デプロイメント記述子からコンフィグレーションできます。

WebLogic Server には、多くのコンフィグレーション オプションと調整可能な設定があり、サポートされている任意の環境で WebLogic Integration ソリューションをデプロイするために使うことができます。以下の節では、WebLogic Integration のデプロイメントに最も関係する WebLogic Server のコンフィグレーション可能な機能について説明します。

クラスタ化

作業負荷に対する許容量を増やすには、WebLogic Server をクラスタ環境で実行します。クラスタは、単体のユニットとして管理できるサーバのグループです。クラスタ化により、単一サーバよりもスケーラビリティの高いデプロイメント プラットフォームを構築できます。クラスタ化の詳細については、「WebLogic Integration クラスタについて」を参照してください。

Java Message Service

WebLogic Java Message Service (JMS) により、Java アプリケーションでメッセージ システムを共有し、メッセージを交換 (作成、送信、受信) することができます。WebLogic JMS は、Sun Microsystems, Inc の Java Message Service Specification version 1.0.2 に準拠しています。

JMS サーバはクラスタ化が可能です。また、接続ファクトリは WebLogic Server の複数のインスタンスにデプロイできます。さらに、「プロセス アプリケーション リソース」に示すように、JMS イベントの送り先をコンフィグレーションすることで、ワークフローの通知とメッセージを処理できます。

WebLogic JMS の詳細については、以下のトピックを参照してください。

EJB プールとキャッシング

WebLogic Integration のデプロイメントでは、EJB の数がシステムのスループットに影響します。EJB プールまたは EJB キャッシュにより、システムに含まれる EJB の数を EJB のタイプに応じて調整できます。次の表では、EJB のタイプと関連する可変パラメータを示します。

表 1-1 EJB の調整用パラメータ 

EJB Type

調整可能なパラメータ名

調整可能なパラメータの説明

メッセージ駆動型 Bean

max-beans-in-free-pool

キューから作業を取り出すリスナの最大数

ステートレス セッション Bean

max-beans-in-free-pool

作業要求に対応できる bean の最大数

ステートフル セッション Bean

max-beans-in-cache

一度にアクティブにできる bean の数。設定が小さすぎると、CacheFullExceptions が発生する。設定が大きすぎると、メモリを過度に消費する。

エンティティ Bean


 

EJB をコンフィグレーションしてスループットを制御する詳細については、『WebLogic Server パフォーマンス チューニング ガイド』の「WebLogic Server のチューニング」を参照してください。

JDBC 接続プール

JDBC (Java Database Connectivity) は、Java アプリケーションから SQL データベース内のデータにアクセスするために使用します。データベース接続を確立する際のオーバーヘッドを減らすために、WebLogic JDBC には接続プールが用意されており、すぐに使える DBMS への接続のストックとして利用できます。

JDBC 接続プールは、DBMS 接続の最適化に使用します。JDBC 接続プールのサイズをコンフィグレーションすることにより、WebLogic Integration のパフォーマンスをチューニングできます。設定が小さすぎると、接続可能になるまでの WebLogic Integration の待機時間が長くなります。設定が大きすぎると、DBMS のパフォーマンスが低下します。

WebLogic JDBC 接続プールの詳細については、以下を参照してください。

実行スレッド プール

実行スレッドプールによって、WebLogic Server で同時に実行可能なスレッド数を制御できます。設定が小さすぎると、処理が同時に行われなくなり、さらにデッドロックの発生する危険性が高くなります。設定が大きすぎると、メモリを過度に消費し、スラッシングが発生する可能性が高くなります。

また、実行スレッドの数によって、受信ソケット メッセージを読み込むスレッド数 (ソケット リーダ スレッド) が決まります。デフォルトでは、この数は、実行スレッド数の 1/3 です。この数が小さすぎると、ソケットを読み込むスレッドが競合したり、デッドロックの原因となったりします。

実行スレッド プールは、予想されるスレッドの合計数を実行できる程度に設定してください。ただし、システム内のコンテキストの過度の切り替えによってパフォーマンスが低下してしまうほど高く設定しないでください。実行しているシステムをモニタし、さまざまな値を試して実行スレッド プールに最適な値を決めてください。

注意 : ほとんどのプロダクション アプリケーションでは、実行スレッド カウントをデフォルト値より大きくする必要があります。一般的に使用されるスレッド カウント値は 50 です。実際のスレッド カウント値に合わせて JDBC 接続プールを調整してください。

実行スレッド プールをコンフィグレーションする方法の詳細については、『WebLogic Server パフォーマンス チューニング ガイド』の「WebLogic Server アプリケーションのチューニング」の「実行キューの作成」を参照してください。

J2EE コネクタ アーキテクチャ

WebLogic J2EE コネクタ アーキテクチャ (J2EE Connector Architecture : JCA) により、J2EE プラットフォームを異機種のエンタープライズ情報システム (Enterprise Information Systems : EIS) と統合できます。WebLogic JCA は、Sun Microsystems, Inc の J2EE コネクタ仕様バージョン 1.0 に準拠しています。

WebLogic J2EE コネクタ アーキテクチャの詳細については、『WebLogic J2EE コネクタ アーキテクチャ』の「WebLogic J2EE コネクタの概要」を参照してください。

プロセス アプリケーション リソース

プロセス アプリケーションは、EAR ファイルに保存されます。デプロイメント用の EAR ファイルをコンパイルするには、WebLogic Workshop ヘルプの「WebLogic Workshop アプリケーションをプロダクション サーバにデプロイするには」の説明に従って、WebLogic Workshop アプリケーションをコンパイルする際の標準的な手順を使用します。

EAR ファイルは、複数の Web アプリケーションと共有のクラス ファイルで構成されています。生成されたスキーマ ファイルは、共有のクラス ファイルに組み込まれます。次の図に示すように、各 Web アプリケーションは IDE ワークスペースのプロジェクトに対応します。

図 1-1 プロセス アプリケーション


 

各 Web アプリケーションは、以下の要素で構成されています。

次の図は、プロセス Web アプリケーションのコンポーネントを示しています。

図 1-2 プロセス Web アプリケーション


 

非同期ディスパッチャでは、ステートレス プロセスとステートフル プロセスで異なる対話形式を取ります。次の図は、非同期ディスパッチャとステートレス プロセス間の対話の例を示しています。

図 1-3 ディスパッチャとステートレス プロセス間の対話


 

次の図は、非同期ディスパッチャとステートフル プロセス間の対話の例を示しています。

図 1-4 ディスパッチャとステートフル プロセス間の対話


 

プロセス コントロール リソース

プロセス コントロールでは、RMI、または最適化されたデータ フォーマットを使用した JMS のいずれかによって、メッセージをあるプロセスから別のプロセスに直接送信できます。RMI または JMS を使用するときには、WebLogic Server のロード バランシングの通常のルールが適用されます。一般にメッセージは、WebLogic Server ロード バランシングのサーバ親和性によってクラスタ内の 1 つのサーバに保存されます。

メモリ内のディスパッチャ テーブルによって、実行時にメッセージを送信するプロセス コントロールに必要な詳細情報を確認できます。このディスパッチャ テーブルは、アプリケーションがデプロイまたは再デプロイされると自動的に更新されます。

プロセス呼び出しの動作は、同期ディスパッチャと非同期ディスパッチのどちらで使用するかにより異なります。次の図は、同期ディスパッチでのプロセス コントロールの動作を示しています。

図 1-5 同期ディスパッチでのプロセス コントロール


 

次の図は、非同期ディスパッチでのプロセス コントロールの動作を示しています。

図 1-6 非同期 (バッファ付き) 呼び出しでのプロセス コントロール


 


 

同期クライアント プロセスは、非同期プロセスと対話することもできます。

注意 : 以下の専用の実行スレッド プールを作成することで、このコンフィグレーションのパフォーマンスを最適化できます。

アプリケーションおよびトラッキング レベルの要件に適合するスレッド プール サイズを選択します。

これらのプールを作成しない場合、デフォルト スレッド プールによってスレッドが消費されます。実行スレッド プールの詳細については、『WebLogic Server パフォーマンス チューニング ガイド』の「WebLogic Server アプリケーションのチューニング」の「実行キューの作成」を参照してください。

このコンフィグレーションの詳細については、WebLogic Workshop ヘルプの「Integration アプリケーションを構築する」の「ビジネス プロセス構築ガイド」にある「同期および非同期のビジネス プロセスを構築する」の「同期クライアントと非同期ビジネス プロセス」を参照してください。実装例については、WebLogic Integration の「ソリューション サンプル」を参照してください。

メッセージ ブローカ リソース

メッセージ ブローカのパブリッシュ コントロールまたはイベント ジェネレータを介してメッセージ ブローカでメッセージがパブリッシュされるたびに、次のアクションが実行されます。

イベント ジェネレータ リソース

WebLogic Integration には、多くのネイティブ イベント ジェネレータがあります。

また、イベント ジェネレータは、Application Integration EIS イベントにも使用されます。EIS アダプタのイベント ジェネレータに関する追加情報については、「Application Integration の機能とクライアント」を参照してください。

JMS ジェネレータ

JMS イベント ジェネレータは、メッセージ駆動型 Bean プールとしてパッケージ化します。クラスタ内の任意の台数の管理対象サーバを対象とすることができます。一般的に、物理的な JMS 送り先を使用する場合は 1 台の管理対象サーバ、分散送り先を使用する場合はクラスタを対象とします。

ファイル、電子メール、およびタイマーのイベント ジェネレータ

これらのイベント ジェネレータは、発行されるイベントをポーリングするので、「ポーリング型」イベント ジェネレータと呼ばれます。イベントを発行するには、各イベント ジェネレータを、メッセージ駆動型 Bean プールとしてパッケージ化し、特定の JMS キューでコンフィグレーションします。メッセージは、poll-interval の送信時刻に、イベント ジェネレータから関連するキューに送信されます。キューは、同一タイプ (ファイル、電子メールなど) のイベント ジェネレータ間で共有され、セレクタによってキュー内のメッセージが共有されます。

ポーリング イベント ジェネレータの対象を指定する方法は、次の表に示すように、関連するキューを所有する JMS サーバの対象がどのように指定されているかによって異なります。

JMS の対象が移行可能か

ポーリング イベント ジェネレータの対象

はい

クラスタ

いいえ

単一サーバ

ポーリング イベント ジェネレータはポーリング中に競合するため、クラスタの 1 台の管理対象サーバでのみアクティブになるように制限されます。イベント ジェネレータが移行可能なキューに関連付けられているときは、ポーリング イベント ジェネレータの対象がクラスタであっても、そのイベント ジェネレータは、移行可能な JMS サーバを含む単一サーバ上でのみアクティブになります。

注意 : WebLogic Integration では、単一サーバを対象とするポーリング イベント ジェネレータがサポートされます。ただし、このコンフィグレーションは高可用性を必要とするアプリケーションには適しません。

MQSeries および HTTP イベント ジェネレータ

HTTP イベント ジェネレータは、HTTP リクエストを受け取り、内容のタイプを調べ、メッセージをメッセージ ブローカ チャネルにパブリッシュするサーブレットです。MQSeries イベント ジェネレータは、WebSphere MQ キューのメッセージをポーリングし、メッセージ (メタデータとしての MQMD ヘッダとメッセージのペイロード) をメッセージ ブローカ チャネルにパブリッシュします。内容のフィルタ処理、および他の処理条件がこのイベント ジェネレータのチャネル ルールで指定されます。HTTP と MQSeries のイベント ジェネレータはどちらも、単一の管理対象サーバまたはクラスタを対象に指定できます。『WebLogic Integration ソリューションの管理』の「イベント ジェネレータ」を参照してください。

RDBMS イベント ジェネレータ

RDBMS イベント ジェネレータは、データベース テーブルをポーリングして、追加、削除、または更新された行を確認し、結果をメッセージ ブローカ チャネルにパブリッシュします。また、『WebLogic Integration ソリューションの管理』の「イベント ジェネレータ」節で説明しているように、このイベント ジェネレータを使用すると、データベース テーブルにカスタム クエリを実行し、メッセージ ブローカ チャネルに結果をパブリッシュすることもできます。

イベント ジェネレータのサスペンド

イベント ジェネレータのサスペンド状態は、サーバ再起動時には保持されません。サーバ再起動時にイベント ジェネレータがサスペンド状態にある場合、イベント ジェネレータはサスペンドされたままになり、イベントが処理されません。イベント ジェネレータを再起動するには、WebLogic Integration Administration Console でイベント ジェネレータを [実行中] に設定します。詳細については、『WebLogic Integration ソリューションの管理』のイベント ジェネレータ」を参照してください。

Trading Partner Integration リソース

Trading Partner Integration (TPI) は、RosettaNet (バージョン 1.1 と 2.0) と ebXML (バージョン 1.0 と 2.0) の実装によりピアツーピア ビジネス プロトコルのフレームワークを提供します。

注意 : Trading Partner Integration は以前は B2B と呼ばれていました。一部のリソース名には、以前のリリースの WebLogic Integration から引き継がれた略語が使用されています。現在、Trading Partner Integration リソースには名前の一部として B2B が含まれています。

WebLogic Integration をクラスタ化されたドメインにデプロイする場合、管理サーバのリソースを除き、すべての Trading Partner Integration のリソースをクラスタに平均的にデプロイする必要があります。Trading Partner Integration リソースの対象としてドメイン内のすべてのクラスタ サーバを指定すると、アプリケーションの高可用性、スケーラビリティ、およびパフォーマンスの向上を実現できます。

Trading Partner Integration のリソースとクラスタ化に関する詳細については、「クラスタ デプロイメントの設計」を参照してください。Trading Partner Integration の負荷に対応するためのコンフィグレーションが可能なリソースの詳細については、『WebLogic Integration ソリューションの管理』の「トレーディング パートナ管理を参照してください。

トレーディング パートナ管理リポジトリ

トレーディング パートナ管理リポジトリは、Trading Partner Integration の重要な要素です。このリポジトリとすべての Trading Partner Integration でのデータベース処理は、cgPool という名前の JDBCPool を使用した cgDataSource という名前の JDBCTxDataSource で実行されます。

注意 : トレーディング パートナ管理リポジトリ用のデータベースを、同時アクセス機能を使用するようにコンフィグレーションすることができます。特定のデータベースに関する問題については、『WebLogic Integration 8.1 リリース ノート』を参照してください。

データ キャッシュ

トレーディング パートナ管理リポジトリからのデータは、サーバの起動時にキャッシュされます。これにより、このリソースへのアクセスが減少することでパフォーマンスが向上します。クラスタ化環境では、トレーディング パートナ管理リポジトリのデータは、管理サーバと各管理対象サーバにキャッシュされます。このキャッシュは、次の図の方法で同期化されます。

図 1-8 トレーディング パートナ管理リポジトリのキャッシュの同期化


 


 

データ キャッシュの管理

WebLogic Integration Administration Console では、トレーディング パートナ管理リポジトリの更新、インポート、削除を行えます。WebLogic Integration Administration Console を使用してこれらの操作を実行する詳細については、『WebLogic Integration ソリューションの管理』の「トレーディング パートナ管理を参照してください。

Trading Partner Integration の初期化と実行時処理

Trading Partner Integration は、WLI-B2B Startup EJB によるサーバ起動時に初期化されます。

警告 : WLI-B2B Startup EJB では、initial-beans-in-pool の値が 1 に設定されています。この値を変更すると、Trading Partner Integration が起動しなくなることがあります。

実行時には、Trading Partner Integration の送受信のメッセージが、別々のパスで配信されます。次の節では、送信と受信のビジネス メッセージのパスとプロセスのフローについて説明します。

送信メッセージ

次の図は、送信ビジネス メッセージのパスを示しています。

図 1-9 送信メッセージのパス


 

上の図は、以下のプロセス フローを表します。

  1. メッセージが、Trading Partner Integration コントロール (ebXML または RosettaNet) によって WebLogic Integration ビジネス プロセスから送信されます。
  2. Trading Partner Integration のレイヤ (RosettaNet または ebXML) は、コントロール (メッセージ、注釈など) からの入力を使用して、送信する適切なメッセージを作成します。
  3. Trading Partner Integration のレイヤは、このメッセージを WebLogic Integration ドキュメント ストアで保持し、JMS キューに転送します。RosettaNet と ebXML には、それぞれ専用の JMS キューである wli.internal.b2b.rosettanetencoder.queue、および wli.internal.b2b.ebxmlencoder.queue があります。
  4. 各キューには、それぞれ、キューをリスンするメッセージ駆動型 Bean があります。メッセージ駆動型 Bean には、RosettaNet 向けの WLI-B2B RosettaNet と ebXML 向けの WLI-B2B ebXML があります。大量のメッセージを交信するクラスタ環境をサポートする場合は、これらのメッセージ駆動型 Bean のプール サイズを大きくします。
  5. メッセージ駆動型 Bean は、HTTP(S) でメッセージを非同期に送信します。
  6. 送信メッセージのメッセージ トラッキング情報は、Trading Partner Integration のメッセージ トラッキング キューである wli.internal.msgtracking.queue に送信されます。WLI メッセージ トラッキングのメッセージ駆動型 Bean がこのキューをリスンします。WebLogic Integration Administration Console のトレーディング パートナ管理モジュールで設定されたトラッキング レベルに基づいて、各種メッセージ トラッキング テーブルが更新されます。
  7. WebLogic Integration Administration Console を使用してトラッキング レベルを設定する方法の詳細については、『WebLogic Integration ソリューションの管理』の「トレーディング パートナ管理を参照してください。

メッセージの受信

次の図は、受信ビジネス メッセージのパスを示しています。

図 1-10 受信メッセージのパス


 

上の図は、以下のプロセス フローを表します。

  1. トレーディング パートナに送信されたメッセージは、B2BdefaultWebApp/WEB-INF/web.xml で指定した TPI Transport Servlet Filter によって受信されます。TPI Transport Servlet Filter によって URL がチェックされ、受信要求が TPI URL/要求かどうかが判定されます。送り先が Trading Partner Integration でない場合、メッセージは他のフィルタに送られ、最終的な送り先に送られます。
  2. 送り先が Trading Partner Integration のメッセージの場合、フィルタにより転送サーブレットの WLI-B2B HTTP Transport に送られます。このサーブレットは、b2b.war にパッケージ化されます。
  3. メッセージは、次に Trading Partner Integration に送られます。各ビジネス プロトコルには、異なるデコーダがあります。対応するデコーダでメッセージが復元されます。
  4. デコーダは、WLI ドキュメント ストアにメッセージを格納します。
  5. デコーダが、送り先パーティと送り元パーティ、サービス名、その他、メッセージのディスパッチに役立つ関連情報を取得します。
  6. メッセージが、非同期ディスパッチャ キューにディスパッチされます。このメッセージが新しい交換の一部であるとデコーダが判断すると、新しいプロセス インスタンスが要求されます。このメッセージが、継続中の交換の一部であれば、デコーダは、そのメッセージを既存プロセス インスタンス内の特定の受信ノードにディスパッチするよう要求します。受信ノードのメソッド署名に適するようにメッセージ パートがパッケージ化されます。
  7. Async Dispatcher Module が、適切なビジネス プロセスにメッセージをディスパッチします。
  8. 受信メッセージのメッセージ トラッキング情報は、Trading Partner Integration のメッセージ トラッキング キューである wli.internal.msgtracking.queue に送信されます。WLI メッセージ トラッキングのメッセージ駆動型 Bean がこのキューをリスンします。WebLogic Integration Administration Console のトレーディング パートナ管理モジュールで設定されたトラッキング レベルに基づいて、各種メッセージ トラッキング テーブルが更新されます。
  9. WebLogic Integration Administration Console を使用してトラッキング レベルを設定する方法の詳細については、『WebLogic Integration ソリューションの管理』の「トレーディング パートナ管理を参照してください。

Application Integration の機能とクライアント

以下の節では、WebLogic Application Integration の主な機能と、クライアントでの使用方法を説明します。

クラスタ化と Application Integration の詳細については、「WebLogic Integration クラスタについて」を参照してください。

Application Integration の機能は、WebLogic Integration 製品に統合されています。Application Integration を他の WebLogic Workshop や WebLogic Portal などの WebLogic Platform 製品に使用するには、各コンポーネントが含まれるドメインをコンフィグレーションする必要があります。ドメインの作成に関する詳細については、『コンフィグレーション ウィザードの使い方』の「新規 WebLogic ドメインの作成」を参照してください。WebLogic Platform アプリケーションのデプロイの詳細については、「WebLogic Platform アプリケーションのデプロイメント」を参照してください。

同期サービス呼び出し

同期呼び出しを使用するのは、基盤となる EIS が要求に迅速に応答できる場合、またはクライアント アプリケーションが待機できる場合です。

次の図は、同期サービス呼び出しのフローを示しています。

図 1-11 同期サービス呼び出し


 


 

同期サービス呼び出しでは、クライアント (ビジネス プロセスなど) が、アプリケーション ビュー (ビジネス プロセス コントロールなど) を呼び出します。アプリケーション ビューは、同期 CCI (Common Client Interface) 呼び出しを使用してアダプタを呼び出します。サービス アダプタは、実際に要求を処理する J2EE-CA サービス アダプタです。

注意 : プロセスが EIS のクライアントとして動作するときには、要求が完了するのを待つ間、WebLogic の実行スレッド、ビジネス プロセス、EJB インスタンスなどのリソースとともにプロセスは待機します。スループットを最適化するため、基盤となる EIS システムが要求に迅速に応答できる場合を除き、非同期呼び出しの使用を検討してください。

非同期サービス呼び出し

次の図は、WebLogic Integration の非同期サービス処理を示しています。

図 1-12 非同期サービス呼び出し — プログラム/カスタム クライアント


 

注意 : WebLogic Integration プロセスまたは WebLogic Workshop Web サービスからアプリケーション ビュー コントロールを使用する場合、非同期応答は、非同期応答の JMS キューに入れられずにプロセスの EJB または Web サービスに直接配信されます。

次の図は、WebLogic Integration プロセス クライアントでの非同期サービス呼び出し中に実行される処理を示しています。

図 1-13 非同期サービス呼び出し — WebLogic Integration プロセス クライアント


 

上の図は、以下のプロセス フローを表します。

  1. アプリケーション ビュー クライアントが、アプリケーション ビュー インスタンスをインスタンス化します。
    • WebLogic Integration プロセス (上の図を参照) では、アプリケーション ビュー インスタンスが、アプリケーション ビュー コントロールのインスタンスにカプセル化される。非同期要求には、AsyncServiceProcessor によってこのプロセス インスタンスに要求を戻すプロセス ハンドルのタグが付けられる。
    • プログラム/カスタム クライアントの場合 (この節の「非同期サービス呼び出し — プログラム/カスタム クライアント」の図を参照)、アプリケーション ビュー インスタンスが直接使用される。
  2. アプリケーション ビュー インスタンスが、AsyncServiceRequest オブジェクトを作成し、wli.internal.ai.async.request キューに送信します。
  3. AsyncServiceProcessor のメッセージ駆動型 Bean は、キューのメッセージを FIFO (先入れ先出し) 方式で受信します。AsyncServiceProcessor は、JMS ObjectMessage の AsyncServiceRequest オブジェクトを使用して、限定名、サービス名、要求ドキュメント、アプリケーション ビューの応答の送り先を判定します。
  4. AsyncServiceProcessor は、アプリケーション ビューの EJB を使用して、サービスを同期的に起動します。サービスは、リソース アダプタに対する同期 CCI ベースの要求/応答メッセージに変換されます。
  5. AsyncServiceProcessor が応答を受け取ります。応答が、AsyncServiceResponse オブジェクトにカプセル化され、AsyncServiceRequest オブジェクトで指定された応答の送り先に送られます。
    • WebLogic Integration プロセス クライアントの場合、応答は、要求にタグ付けされたプロセス ハンドルにディスパッチされる。
    • WebLogic Integration プロセス クライアントの場合、応答は、アプリケーション ビュー コントロール インスタンスのコールバック (onServiceNameResponse) によって送信される。 wli.internal.ai.async.request キューに置かれる。
  6. クライアントが、非同期応答を受信します。
    • WebLogic Integration プロセス クライアントの場合、応答は、アプリケーション ビュー コントロール インスタンスのコールバック (onServiceNameResponse) によって送信される。
    • プログラム/カスタム クライアントの場合、クライアントは、AsyncServiceResponse メッセージを JMS ObjectMessage として受信し、手順 2 に示す invokeServiceAsync() 呼び出しで指定される AsyncServiceResponseListener に送信する。

イベント

Application Integration アダプタは、ビジネス プロセスまたは Web サービスによって消費されるイベントを生成します。イベントは、次のいずれかの方法で、アプリケーション ビュー クライアントに送られます。

次の図は、WebLogic Integration のイベント処理を示しています。

図 1-14 メッセージ ブローカ経由のイベント


 

上の図は、以下のイベント処理の手順の流れを表しています。

  1. エンタープライズ情報システム (Enterprise Information System : EIS) でイベントが発生します。
  2. イベントのデータが、アダプタ インスタンスのイベント ジェネレータに送られます。この送信内容と送信されたデータは、アダプタ固有のものです。イベント ジェネレータは、EIS 固有のイベント データを XML ドキュメントに変換し、IEvent オブジェクトをアダプタ インスタンスの組み込みイベント ルータのインスタンスにポストします。イベント ジェネレータと組み込みイベント ルータのインスタンスは、アダプタ インスタンスのイベント接続を構成します。
  3. イベント接続は、IEvent オブジェクトを、このイベント タイプで示されたすべての登録済みアプリケーション ビュー イベントのサブスクリプション オブジェクトに送信します。サブスクリプション オブジェクトは、アプリケーション ビューのデプロイメント時に登録されます。
  4. イベント サブスクリプション オブジェクトは、IEvent オブジェクトを、そのイベント タイプのメッセージ ブローカ イベント チャネル (アプリケーション ビュー イベントの名前が付けられたイベント チャネル) と wli.internal.ai.event の JMS トピックの両方に送信します。
  5. クライアントは、次の 2 つのいずれかの方法でイベントを受け取ります。
    • WebLogic Integration プロセス クライアントは、イベント チャネルによってイベントを受信する。
    • プログラム/カスタム クライアントは、クライアントが提供した EventListener インスタンスによってイベントを受信する。EventListener インスタンスが、イベント トピックで登録された JMS メッセージ リスナから呼び出される。

リレーショナル データベース管理システムのリソース

WebLogic Integration では、データベース リソースを広範囲に活用することで、実行時オペレーションを処理し、アプリケーション データの恒久性を維持します。データベースのパフォーマンスは、全般的な WebLogic Integration のパフォーマンスの主要因になります。WebLogic Integration アプリケーションに関連するデータベースのチューニング要件については、「データベースの準備」および「可用性の維持」にあるデータベース固有の注意事項を参照してください。

データベースをチューニングする詳細については、データベース ベンダのドキュメントを参照してください。

ハードウェア、オペレーティング システム、およびネットワーク リソース

ハードウェア、オペレーティング システム、およびネットワーク リソースは、WebLogic Integration パフォーマンスにとって重要な役割を果たします。デプロイメントは、『WebLogic Integration リリース ノート』記載されたハードウェアとソフトウェアの要件に準拠する必要があります。

 

ナビゲーション バーのスキップ  ページの先頭 前 次