Oracle® Fusion Middleware Oracle Service Busコンセプトおよびアーキテクチャ 11g リリース1(11.1.1.3) B61433-01 |
|
前 |
次 |
この項では、現在注目されているサービス駆動型のIT戦略、サービス指向アーキテクチャ(SOA)イニシアティブの主要なビジネス・ドライバ、およびEnterprise Service Bus (ESB)コンポーネントの戦略面での重要性について簡単に説明します。Oracle Service Busのインフラストラクチャ・ソリューションとSOAを達成する要因として特徴付ける機能について概念的な概要を説明します。この説明は、SOAイニシアティブを担当する管理部門の関係者、統合を目的とするIT設計者、サービス・モデル作成者または設計者、およびシステム管理者を対象としています。
この項の内容は以下のとおりです。
今日の競争の激しいグローバル・マーケットでは、ビジネスは非常に流動的な環境で展開され、そこでは情報が最も戦略的な意味を持つ資産になります。競争やマーケットの動向、規制の定めなどの変化に対して時宜を得た情報によって迅速に対応することは、ビジネスが効率的に機能し、全体的な成功をもたらすための鍵となっています。急速に変化するマーケットの要求を満たすために、ビジネスは顧客やパートナとやり取りする方法と、ITインフラストラクチャの設計および構築方法の両方において、サービス駆動型にシフトしてきています。
ROIの達成に努めるためにビジネスが機敏性と鋭敏性を高めていくにつれて、組織では新しいコスト効率のよい手段を発見し、新しいサービスを提供し、組織内の情報とビジネス・プロセスの自由な流れを促進するために、企業のITグループへの依存を深めてきました。次に示すビジネス・ドライバは、サービス指向のITアーキテクチャを今日の企業において経済的に現実性のあるものにしています。
新しいサービスおよび従来のサービスを迅速に公開して利用可能にするWebサービスの業界による採用
アプリケーションからユーザーに広がるシステムを中心にしたプロセス構築の必要性
プロセスをサービスとして迅速に公開することの必要性
ミッション・クリティカルなプロセスのトランザクションの整合性を保つ、安全で一貫した実行
きめ細かく統合されたアプリケーションとプロセス制御の開発
見通しのよい処理によるパフォーマンスの高い実行の実現
サービス指向アーキテクチャ(SOA)は、サービスの提供を最適化し効率的なビジネス・プロセス管理を確実にするためのインフラストラクチャ改革のITにおける主要な課題として出現してきました。SOAによるパラダイム・シフトの一部はITインフラストラクチャの設計方法に根本的な変化をもたらし、アプリケーション・インフラストラクチャから集中したサービス・インフラストラクチャへと移行しました。サービス指向アーキテクチャではエンタープライズ・アプリケーションに含まれる個別の機能を、相互運用性のある、標準に基づいた共有「サービス」のレイヤーとして編成することにより、複合アプリケーションおよびプロセスとしての組合せや再使用が可能になります。
さらに、このアーキテクチャによるアプローチでは、外部サービス・プロバイダによって提供されたサービスをエンタープライズITアーキテクチャに取り込むことができます。その結果、企業は異なる場所に格納された主要なビジネス情報をコスト効率のよい方法で解放することができます。エンタープライズITをアプリケーションではなくサービスを中心として編成することで、SOAはサービスが可能になるまでの時間を短縮し、急ピッチで進むビジネス要件の変化により柔軟に対応できます。
近年では、多くの企業でパイロット・プロジェクトによる暫定的なSOAへの適応から進展して、企業全体での最適化されたSOAのデプロイメントを実現する、定義済みの繰返し可能なアプローチへと拡大しています。プレゼンテーション・サービス、ビジネス・プロセス、ビジネス・サービス、データ・サービス、および共有サービスからなるIT SOAアーキテクチャのすべてのレイヤーがサービスに対応しています。
サービス仲介の課題
SOAイニシアティブに関する主な課題は、多くの企業で種類の異なる複数ベンダが存在するITのランドスケープと、その結果としてビジネス情報が個々の場所に格納されることに起因しています。レガシー・インフラストラクチャの異なるコンポーネントの置換えに手間とコストをかけるよりも、企業では既存のビジネス・アプリケーションをサービスとして拡張して、他のビジネス・プロセスやアプリケーションでの使用を選択することがよくあります。
Webサービス・インタフェースの既存のパッケージ・アプリケーションへの流入によって、確立済みのサービスや準拠するガイドラインに忠実でないサービスが導入されることが少なくありません。これは、サービスがCRM、データ・ウェアハウス、ERPなどのエンタープライズ・システムの中核からパブリッシュされたサービスで顕著です。
堅牢で包括的なサービス・インフラストラクチャ・ソリューションがない場合、開発者は、オブジェクト・リクエスト・ブローカ(ORB)、メッセージ指向ミドルウェア(MOM)、リモート・プロシージャ・コール(RPC)などのプログラム間の通信をサポートする各種の「ミドルウェア」テクノロジを使用していました。最近では、ITインフラストラクチャ開発者は、種類の異なるアプリケーションとプロセスを統合するために、Webサービスへのポイント・ツー・ポイント接続を複雑な統合ロジックとしてハード・コーディングしています。これは当然の結果としてサービスがエンタープライズIT環境内で複雑および無秩序に広がっていきます。次の図に、静的なサービス統合のシナリオの典型例を示します。
種類の異なるITアーキテクチャに起因するこれ以外のサービス関連の課題には次のものがあります。
複雑で固定化したハード的な接続による緊密に連結されたビジネス・サービスの統合
種類の異なるプロトコルとこれに関連するアプリケーションによるデプロイされたサービスの管理の難しさ
企業の所有にかかる総コストの高さ
サービスの再使用機能の低下
トランスポート、変換、セキュリティ、およびルーティングに固有の詳細についての繰返し
サービス・エンドポイントのインタフェースに変更があった場合に再開発と再デプロイメントにかかる労力の急激な増大
サービス・コンシューマに大きな影響を与える避けられないサービス障害
ITインフラストラクチャの効率化を目指す企業のアーキテクチャ設計者とWebサービス作成者は、次のITのニーズに応えるエンタープライズ・サービス機能を現在必要としています。
異なるソースにあるデータへのアクセスと更新の簡素化
企業全体にわたる開発されたサービスの再使用とそのライフサイクルの効率的な管理
複雑な統合ロジックとメッセージ・ルーティング動作に関する動的な構成の提供
サービス・インフラストラクチャの実行時構成機能への対応
エンタープライズ・サービスの使用方法の統一
エンタープライズ・サービスの安全性とITポリシーへの準拠
サービス使用状況のモニターおよび監査とシステム障害の管理
SOAイニシアティブでは、構成は高位の機能にある既存の資産を利用してビジネスの柔軟性を達成するための統合の一部です。成熟したSOA環境では、ビジネスのニーズを迅速に満たすために既存のサービスを使用してすべてのビジネス・アプリケーションが構成されます。サービス・プロビジョニング・プロセスの柔軟性は、サービスの実装においてロジックのコーディングを避けることによって達成されます。
多くの組織では、サービスを非常に細かいレベルで開発しており、多数の小さな固有サービスが増殖すると、幅広い論理サービスへの構成が難しくなります。サービスのレイヤー化は、一体化されたアプリケーションの制限を破り、開発、リリース、およびテスト・サイクルの短縮化を行うための方法の1つです。サービスの定義と作成にレイヤー化されたアプローチを取ることにより、サービス・インフラストラクチャ・チームは、現在および将来のビジネス要求に対して必要なきめ細かさに調整したサービスを達成できます。
サービス・レイヤーは通常、次のサービスからなります。
物理サービス:データを生の形式で取得する機能を表します。
標準サービス:情報の表示についての組織の標準が定義されており、業界標準のフォーマットを使用し、幅広いデータ・フットプリントをサポートします
論理サービス:よりクライアント固有の粒度に合わせた情報の表示を提供します。高度に最適化された問合せを使用してコンパイル時に生成されます。
アプリケーション・サービス:アプリケーションによって、業種に依存する方法で直接利用され、プレゼンテーション・サービスを通して公開される場合もあります。
SOAの成功の鍵を握るのは、ビジネス・プロセスの対話機能の動的な相乗効果および調整、既存のサービスの継続的な進化と新しいサービスの迅速な追加をサポートするEnterprise Service Bus (ESB)です。SOAの利点を実現化するには、今日の企業で多く見られる種類の異なるIT環境におけるサービス統合の複雑性を隠すために抽象的なレイヤーを提供する堅牢でインテリジェントなサービスの仲介機能がIT組織に含まれていることが絶対に必要です。中間的な抽象化レイヤーは、以前はエンタープライズ・アプリケーションのカスタマイズのためのプラットフォームであることを意味していましたが、現在ではサービス・カスタマイズのためのツール・キットであり、サービスの仲介に着目して疎結合されたサービスの対話機能をサポートするためのスケーラブルなインフラストラクチャであることを意味しています。
ESBは、従来のテクノロジによる機能に、メッセージ検証や変換、コンテンツ・ベースのルーティング、セキュリティ、ロード・バランシングといった新しいサービスを組み合せることによって、統合化されたミドルウェア・インフラストラクチャ・テクノロジが進化するための手段です。ESBは提供するサービスの大半で業界の標準を使用しているため、プラットフォーム間の相互運用性を推進し、SOAの実装を検討中の会社にとって論理的な選択の1つになっています。
ESBはエンタープライズSOAを構築してデプロイするための効率的な方法を提供します。ESBは、SOAに共通するサービスの編成、アプリケーション・データの同期、およびビジネス・アクティビティ・モニタリングに関する障害を乗り越える効果的なアプローチを提供するため、設計者や開発者の注目を集めつつある概念です。多くの基本的な形式の場合、ESBでは次の主要機能が提供されます。
Webサービス:普及しつつある標準であるWS-Reliable MessagingやWS-Securityに加えて、SOAP、WSDL、およびUDDIをサポートします。
メッセージング:複数のサービスの品質を持つ非同期のストア・アンド・フォワードによる配信です。
データ変換: XMLからXMLへ変換します。
コンテンツ・ベースのルーティング:ソースと宛先の複数の種類にわたってルーティングをパブリッシュおよびサブスクライブします。
プラットフォーム中立: Javaや.Net、メインフレーム、データベースなど、企業にあるどのようなテクノロジにも接続します。
堅牢なSOAスイートは以下を提供します。
主要なテクノロジに加えて、パッケージおよびカスタマイズされたエンタープライズ・アプリケーションへの接続に対応したアダプタ
種類の異なるデータ・ソースから容易にデータ・サービスの作成を可能にする分散問合せエンジン
長期実行プロセス(ステートフル)および短期実行プロセス(ステートレス)の両方に対応したサービス編成エンジン
ユーザーが使用するアプリケーションの迅速な作成を可能にするアプリケーション開発ツール
複数のソースからサービスを集約するパーソナライズされたポータルの作成を可能にするプレゼンテーション・サービス
ESBを使用すると、不安定で常にメンテナンスを必要とするポイント・ツー・ポイント接続の必要性がなくなるため、企業は種類の異なるリソースを接続する上でより大きな柔軟性を得ることができます。サービス・コンシューマとサービス・プロバイダの間にESBの仲介機能を追加することによって、下位にあるサービス・エンドポイント・インタフェースの実装の詳細が両者から隠され、再開発や再デプロイメントが与える影響をサービス・コンシューマ・レベルで削減またはなくすことができます。
業界でもトップの企業では、サービス仲介機能とビジネス・プロセスの管理機能を戦略的に統合する、企業に対応した高速のESB仲介機能を利用することでSOAの成功を達成しています。サービスの操作管理の重要性がSOAの成功要因として決定的であることを認識することで、これらの企業はエンタープライズ・クラスのサービス・スケーラビリティ、カスタマイズ、およびセキュリティを提供するソリューションを実装しました。SOAサービスのライフサイクルの管理とガバナンスのために特に構築されたこのようなソリューションを採用することで、これらの企業は次のようなビジネス上の利点を手にしました。
SOAの開発イニシアティブを加速することによるコストの最小化
サービスの連続した可用性を保証することによる顧客の満足
サービス・エンドポイントを仮想化することによるサービス・インフラストラクチャの変化からのサービス・コンシューマの保護
共有サービス・インフラストラクチャの利用と統一されたモデリング方法によるROIの最大化
サービス対話機能の簡素化による統合にかかる負担の軽減
共有サービスの正確な実行時ガバナンスによる効率的なSOAイニシアティブの改善
棚卸しと実行時サービスの追跡によるSOA経費の正当化
SOAの導入による便益または費用削減の測定による正確な費用便益の決定
Oracleは、サービス指向アーキテクチャとして一から作成された最初のサービス・インフラストラクチャ製品ファミリであり、SOAの組織全体へのデプロイと、ビジネスの機敏性とITの効率性の達成を成功するために統一された製品のセットをITにもたらします。
Oracle製品ファミリでは、次の製品ラインを使用できます。
Oracle User Interaction: ポータルや複合アプリケーションを含むサービス・インフラストラクチャを利用する各種の対話機能を持つソリューションの作成に使用される統一された製品ライン
Oracle Business Process Management: ビジネス・プロセスのライフサイクル全体の自動化、実行、およびモニターを行うソフトウェアを含む製品ライン
Oracle Data Service Integrator: 企業内にある種類の異なるソースからのデータを統一してリアル・タイムで表示するデータ・サービスを可能にする製品ライン
Oracle Service Busは、SOAライフサイクル管理のために一から作られた、実績を持ちマーケットをリードするEnterprise Service Bus (ESB)であり、サービス検出と仲介、迅速なサービス・プロビジョニングとデプロイメント、およびガバナンスのための基礎的な機能を提供します。
このサービス・インフラストラクチャ・ソフトウェアは、大まかで緩やかに結合された標準ベースのサービスの構築と、ビジネス機能をサービス・コンシューマとバックエンド・ビジネス・サービスに接続できる中立コンテナの作成を、基盤となるインフラストラクチャとは無関係に行うというSOAの原則に基づいています。次の図にエンタープライズIT SOAランドスケープにおけるOracle Service Busのサービス仲介者としての役割を示します。
信頼性、可用性、スケーラビリティ、およびパフォーマンスの厳格な基準を満たすように作成されたOracle Service Busは、Enterprise Service Busの統合機能を操作サービス管理とユニークに組み合せた、レイヤー化された機能アーキテクチャを持つ単一のエンタープライズ・クラスのソフトウェア製品です。
Oracle Service Busの機能は、次の機能レイヤーに分類することができます。
メッセージング・レイヤー: 標準のWebサービス・トランスポート、従来のメッセージング・プロトコル、企業に固有のカスタム・トランスポートの構成を使用してあらゆるサービスで信頼できる接続を行います。詳細は、1.3.3.1項「適応的なサービス・メッセージング・レイヤー」を参照してください。
セキュリティ・レイヤー: ルーティング・ルール、セキュリティ、サービスのエンドポイント・アクセスに関連するポリシーを抽象化する高速のサービス構成および統合環境です。詳細は、1.3.3.2項「最適化されたプラガブル・セキュリティ・レイヤー」を参照してください。
コンポジション・レイヤー: UDDIレジストリを使用するサービスの自動インポートと同期を行うためのサービスの検出と検証機能用のメタデータ駆動の機能の充実した構成インタフェースで、メッセージ・フローの作成、変換、サード・パーティ・サービスのコールアウト、およびコンソールのテストができます。詳細は、1.3.3.3項「機能が充実したサービス・コンポジション・レイヤー」を参照してください。
管理レイヤー: 動的なサービスとポリシーの構成、使用状況とパフォーマンスの一元的なモニター、およびWebサービスだけでなく、Java、.Net、メッセージング・サービス、レガシー・エンドポイントも含めたサービスの管理が含まれる、サービス管理環境です。詳細は、1.3.3.4項「埋込みサービス管理レイヤー」を参照してください。
Oracle Service BusはOracleの総合的なビジネス統合ソリューションの中心であり、Oracle Messaging製品ラインに属しています。Oracle Service Busは異なる種類のサービスを管理することを主要な目的としており、従来型のメッセージ・ブローカリングが種類の異なるIT環境全体にわたって行われていることを前提としています。
Oracle Service Busと集中的なインテリジェントなメッセージ仲介およびサービスのライフサイクル管理機能のアーキテクチャは動作が軽くステートレスで高パフォーマンスであるため、分散サービス・ネットワークの中核となるコンポーネントとして理想的なものになっています。
ITの幅広いサービス指向アーキテクチャ(SOA)ランドスケープに分散サービス管理の仲介機能として適合するように設計されており、種類の異なる分散デプロイメントにおいてOracleの他のビジネス・プロセス管理ソリューションと統合することができます。
Oracle Service Busは強力で動作が軽くコスト効率の高いテクノロジであり、次のような場合にサービス開発者や設計者が使用できます。
企業全体のSOAの構築: サービス・コンシューマとサービス・プロバイダの間でリクエスト/レスポンス・メッセージ・フローの構成を行う企業全体のメッセージ・トランスポートとルーティングのバックボーンです。
再使用可能な最小単位のサービスの作成: 組織の柔軟性の向上、アプリケーション統合の促進、複数アプリケーション間でのデータの同期を容易にします。
複合アプリケーションの作成: 既存のアプリケーションのサービスにアクセスする新しいアプリケーションを共有サービスのカタログから迅速に作成することで、再使用による販売までの時間を短縮します。
ビジネス・アクティビティ・モニタリング(BAM): ビジネス・ユーザーが、主要なパフォーマンス指標へのアクセス、ビジネス・アラートへの対処、インフラストラクチャ内を流れるビジネス・イベントのリスニング、これらのイベントに対応するサービスの編成を行えるようにします。これには、エンタープライズ・サービスのパーソナライズされた表示を提供するポータルを使用します。
サービスのライフサイクルは、次の2つの段階で構成されます。
設計段階: サービス・アーキテクチャのチームが組織のビジネス・ニーズを識別し、このニーズをサポートするために多数のサービスとアプリケーションを作成する段階です。
実行時段階: ビジネス・ニーズのカタログを使用して作成されたサービスをサービス作成のロード・マップとして使用し、実行時の提供物として組織に公開します。
Oracle Service Busはサービス・ライフサイクルの実行時段階で統合的な役割を果たします。これにより、サービス・ライフサイクルの次の重要な機能を支援します。
システムの論理的または概念的なレイヤー化を促進します。これは、実行時段階において設計とプロビジョニングのレイヤー化サービスを可能にすることで行います。これにより、実行時の柔軟性とプロビジョニング時に機敏性が失われないことが保証されます。
コンシューマとプロバイダ間のメッセージのフローを管理してモニターします。
ユーザーとプロセスをサービスの変更から分離します。これは、サービスを抽象化し共有されている統合ロジックをサービス・エンドポイントから削除することによって行います。
サービスの変換、検証、情報の追加、およびルーティングを提供します。これは、プロトコル、メッセージ・スタイル、セキュリティとデータの形式をブリッジングすることによって行います。
可視性と操作サービス管理を提供します。これは、コンシューマが使用できるようにサービスを公開することによって行います。
Oracle Service Busの設計方針のポイントは、管理機能とサービス実装を物理的に分離することにあります。Oracle Service Busは、会社のメッセージング構成の一部として、多くのアプリケーションおよびシステムで共用でき、異なるチームによって構築されたサービス実装を異なる部署で統合して適用することも可能です。
サービスが作成されると、後でその他のサービスまたはプロセスが使用できるように、登録および公開されます。サービスは、ローカル・サービス・レジストリでOracle Service Busに直接登録することも、またはOracle Service Registryなどのエンタープライズ・サービス・レジストリからインポートすることもできます。サービスが登録されると、Oracle Service Busは、それらのサービスと通信するためのメッセージ・フローを定義するプロキシ・インタフェースを構成します。
このフローには、適用すべき変換とセキュリティに関する要件、およびメッセージのサービスへのルーティングについての仕様が含まれます。サービスがOracle Service Busに登録されると、Oracle WebLogic Integrationを使用して作成されたビジネス・プロセスなどが、それらのサービスを使用したり、それらを連携させて様々なビジネス・コンテキストをサポートできるようになります。これらの連携されたプロセスは、サービスが使用される方法やビジネス要件に適用される方法、およびより詳細なビジネス・プロセスを定義します。その後、これらのビジネス・プロセスは、ユーザー・インタフェース(GUI)を介してエンド・ユーザーが使用できるように公開されます。ユーザー・インタフェース(GUI)には、Oracle WebLogic Portalなどのトランザクション・ポータル、またはOracle Interactionなどのコラボレーティブ・ポータルがあります。
Oracle Service Busはメッセージ・フロー、システム・ヘルス、およびサービスとエンドポイント間の可用性をモニターして管理するライフサイクルに再び入ります。この情報は、動作のパターンを分析して改善を行う場所を指摘する、ビジネスおよび運用のアナリストに報告されることがあります。ライフサイクルは時間の経過に伴って進化するサービスとして再び開始され、新しいバージョンがリリースされます。
Oracle Service Busの主要な機能は、次の機能レイヤーに分類することができます。
Oracle Service Busでは、前例のないレベルでの種類の相違をサポートしており、標準を使用して任意のサービスに信頼性のある接続を行えます。既存のミドルウェア、アプリケーション、およびデータ・ソースはSOAイニシアティブで最上級の扱いを受け、既存のITへの投資を保護し、種類の異なるエンドポイント、フォーマット、およびプロトコルを使用して、ITによるサービスの接続、仲介、および管理を行えるようにします。
Oracle Service Busは、次の多様なWebサービス・トランスポートで動作します。
HTTP/SOAP
WS-I、WS-Security、WS-Policy、WS-Addressing
SOAP v1.1およびv1.2
WebSphere上のEJB/RMI
Oracle Service BusはSOAP 1.1メッセージを受信し、SOAP 1.2ビジネス・サービスを呼び出すために必要になったときに、SOAP 1.2メッセージに変換することができます。または、その逆の場合の変換もできます。
Oracle Service Busでは従来のメッセージング・プロトコルとメッセージング・パラダイムで動作することにより、メッセージの効率のよい編成を促進します。サポートされるプロトコルと通信パラダイムの詳細な一覧については、第3章「サービス統合」の3.2項「Oracle Service Busのリソース」および3.1.5項「メッセージング・モデル」を参照してください。
業界でも最先端のWebサービスのサポートに加えて、Oracle Service Busでは、MQ Series、CICS、.NET、C/C++アプリケーションへのネイティブの接続性が用意されています。これにより、カスタム・トランスポート・ソフトウェア開発キット(SDK)とOracle Data Service Integratorのネイティブ・トランスポートを使用した企業に固有のカスタム・トランスポートの作成と構成が可能になります。汎用のプロキシ・サービス・テンプレートを使用して、任意のSOAPまたはXMLメッセージを受け入れることができる汎用のプロキシ・サービスを作成する機能があります。
Oracle Service Busでは、高いパフォーマンスと信頼性を実現するために、SOA全体に対する最適化されたデータベースの問合せをサポートしています。.NET、Tibco EMS、IBM MQ、IBM WebSphere、Apache Axis、Cyclone B2B Interchange、およびiWayアダプタを含むWebサービス統合テクノロジと相互運用性があります。
Oracle Service Busの相互運用性については、次のURLにあるOracle Fusion Middlewareのサポートされるシステム構成を参照してください。http://www.oracle.com/technology/software/products/ias/files/fusion_certification.html
Oracle Service Busではサービスのセキュリティをすべてのレベルで保証しています。組込みセキュリティに対応する包括的な一連のコンポーネントにより、顧客は大きな柔軟性と選択の幅を与えられています。ユーザーは自社開発またはサード・パーティ製のセキュリティ・コンポーネントをプラグインすることもできます。組込み機能によって、セキュリティを次のレベルで有効にすることにより、実装における柔軟性が確保されています。
トランスポートのセキュリティ - SSL/基本認証
メッセージ・セキュリティ - WS-Policy/WS-Security、SAML、ユーザーIDとパスワード、X509、署名と暗号化、およびカスタム・セキュリティ資格証明のサポート
コンソール・セキュリティ - ユーザーに対するWebシングル・サインオンとロール・ベースのアクセスのサポート
ポリシー - WS-SecurityとWS-Policyの利用
Oracle Service Busのセキュリティ機能の詳細は、『Oracle Fusion Middleware Oracle Service Bus開発者ガイド』を参照してください。
Oracle Service Busには、サービス構成、モデリング、検出とメッセージ検証について機能の充実した環境があります。また、メッセージ変換、外部サービス・プロバイダへのサービス・コールアウト、ブラウザのテストもサポートされています。
Oracle Service Bus plug-ins for EclipseとOracle Service Busコンソールを使用するOracle Service Busの構成駆動型のコンポジション環境は、コーディング不要のアプローチを使用して設計されており、多様なグラフィカル・モデリング・ツールを使用してメッセージ・フローを作成できます。このモデリング機能により、動的なコンテンツ・ベースのルーティング、メッセージ検証、および例外処理の構成が可能になります。動的なルーティングの詳細は、第5章「サービス・コンポジション」の5.1項「動的なコンテンツ・ベースのルーティング」を参照してください。
コンポジション環境には、UDDIレジストリを使用するサービスの自動的なインポートと同期を行うためのサービス検出と検証機能が含まれています。この機能ではサービスの整合性を確認し、デプロイメントを行う前に競合を調停するための検証を行うことができます。UDDIレジストリの詳細は、第4章「サービス構成」の4.3.1項「UDDIレジストリ」を参照してください。
Oracle Service Busではソースと宛先のサービスで共有される種類の異なるデータ型においてXMLと非XMLの変換をサポートしています。XQueryとeXtensible Stylesheet Language Transformation (XSLT)の標準を使用したデータ・マッピングがサポートされます。これらは外部で作成され、Oracle Service Busにインポートされるか、またはOracle Service BusコンソールのXQueryを使用してスクリプトが作成されます。メッセージ・コンテンツの再フォーマットは、XQueryまたはXSLTを使用するか、または選択された要素を追加、削除、置換してメッセージ・コンテンツを操作することで行えます。変換の詳細は、第5章「サービス・コンポジション」の5.3項「変換」を参照してください。
Oracle Service Busでは、サービス・コールアウト機能による動的なルーティングをサポートしており、より柔軟で洗練されたメッセージ・フローの作成が行えます。メッセージ・フロー内でのサービス・コールアウトは、Oracle Service Busに登録されている他のサービスを呼び出すために使用されます。Javaの終了(通常の従来型Javaオブジェクトの場合)またはWebサービスのコールアウトになることもあります。コンポジション環境には、サービスのトレースやトラブルシューティングを行うためのテスト・コンソールも備わっています。サービス・コールアウトの詳細は、『Oracle Fusion Middleware Oracle Service Bus管理者ガイド』のサービス・コールアウト・メッセージの作成に関する項を参照してください。
Oracle Service Busにはサービス管理機能が埋め込まれており、すべてのメッセージングに対して最適化されたガバナンスを提供します。この機能の先進的なサポートにより、ビジネスに対する要求、要件、および作業量が変化した場合でも、ミッション・クリティカルなビジネス・プロセスの顧客ニーズへの対応が継続されることが保証されます。
Oracle Service Busダッシュボードには、すべてのアプリケーションの開発と管理、サービスのモニターと管理に対して統一されたデータ・サービス・インタフェースが提供されており、操作面でのサポートが向上しました。ダッシュボードでは、エラーおよびパフォーマンス・メトリックのモニター、集約されたESBの概要の表示が行えます。ルーティングの関係、変換、およびポリシーの動的な定義と管理が行えます。ダッシュボードの詳細は、第6章「サービス管理」の6.1.1項「ダッシュボード」を参照してください。
Oracle Service Busにはパフォーマンスとモニター用に組み込まれた最適化機能があり、単一ノードまたはサーバー全体のアラート・モニター、およびメッセージについての構成可能なサービス・レベル合意(SLA)によってサービスの品質を保証しています。また、操作メトリックとメッセージ・パイプラインのSLAアラートの表示と管理もサポートしています。SLA構成の詳細は、第6章「サービス管理」の6.1.3項「アラート経由のSLAの適用」を参照してください。
Oracle Service Busでは、カスタムのエンタープライズ・システム管理フレームワークに加えて、サード・パーティ製のすぐに使用できるレポート・ツールに幅広く対応しています。さらに、操作とデプロイメントのカスタマイズのために、JMXモニタリング・インタフェースやSNMPアラートなどのオープン・インタフェースもサポートしています。レポート機能の詳細は、第6章「サービス管理」の6.2項「メッセージ・レポート」を参照してください。
次の表に、Oracle Service Busの機能の特徴と、各機能で対処するビジネス要件のポイントについてまとめます。
表1-1 Oracle Service Busの特徴と利点
機能 | 機能の特徴 | ビジネス上の利点 |
---|---|---|
メッセージ・ルーティング |
構成駆動型のインテリジェントでコンテンツ・ベースおよびIDベースのルーティングです。 |
ビジネス・ルールや既存のITシステムに対する変更に基づいて、コーディングを行わずに素早くルーティング・ルールを構成することで、ビジネスのニーズに迅速に対応します。 |
メッセージ変換 |
XQueryまたはXSLTに基づく、複数のメッセージ・フォーマットをサポートする動的なメッセージ変換です。 |
簡単または複雑なルーティング・ルールやメッセージ・ペイロードを使用してサービスを動的に変換およびルーティングすることによって、進化し続けるSOAと統合プロジェクトのシナリオに柔軟に対応します。 |
サービス・レジストリ |
サービスのパブリッシュと再使用を行うための、自動化された、または管理者駆動型のUDDI V3レジストリによる相互運用性です。 |
自動的に既存のサービスを検出し、新しいサービスをサービス・レジストリにエクスポートすることで、再使用の扱いがより簡単になっています。 |
サービス・プロビジョニング |
簡素化されたサービス・プロビジョニングです。 |
ビルド・テスト開発サイクルを廃止したことにより、サービスの複数バージョン管理がより容易になり、デプロイメントをより簡単に素早く行えます。 |
メッセージ・セキュリティ |
最適化されプラガブルな、ポリシー駆動型のトランスポート・レベルおよびメッセージ・レベル・セキュリティです。 |
セキュリティ・インフラストラクチャへの既存の投資を活用して、複数のセキュリティ・フレームワーク間をシームレスにブローカリングします。 |
サービス・エンドポイントの相互運用性 |
エンドポイントがサポートする拡張性と拡張されたサービスです。 |
複数の標準、プロトコル、およびベンダでの相互運用性を保証するインフラストラクチャを使用してユニークなIT要件に対応するためにソリューションを拡張します。 |
サービス・レベル合意 |
ルール駆動型の構成可能なサービス・レベル・アグリーメント(SLA)を実施します。 |
SLAが満たされていない場合に、多数の要因とアラートに基づくSLAをユーザーが設定できることにより、可視性とコントロールが増します。 |
メッセージ・トランスポート |
カスタム・トランスポートSDKによるカスタム・トランスポートも含めて、サービス・エンドポイント間の種類の異なるトランスポートのサポートを拡張します。 |
種類の異なるシステムに対する既存の投資を利用し、旧システムから新システムへのスムーズな移行を保証するための柔軟性があります。 |
メッセージ・ブローカリング |
複数のトランスポート・タイプとメッセージ・フォーマットをサポートするWS-I準拠のインテリジェントなメッセージング・ブローカリングです。 |
システムやスタイルを変更せずに種類の異なるメッセージング・プロトコルを持つ既存のITシステムからサービスを編成する機能によって既存のインフラストラクチャを活用して投資を保護します。 |
サービスの可用性 |
JMXおよびSNMPによる積極的なインフラストラクチャ・ヘルスと可用性のモニターです。 |
機能が充実した組込みのダッシュボード、またはサード・パーティ製のパフォーマンス管理システムを使用して、パフォーマンス・メトリックとSLAのサポートを簡単に構成することによってSOAのヘルスと可用性を維持します。 |
サービスのモニターのダッシュボード |
柔軟性がありグラフィカルな埋め込み式の管理とモニターのダッシュボードです。 |
機能が充実した組込みのダッシュボード、またはサード・パーティ製のパフォーマンス管理システムを使用して、パフォーマンス・メトリックとSLAのステータスを自動でモニターおよび管理します。アラートに基づいて対応策を積極的に実行します。 |
サービス・デプロイメント |
使いやすく、カスタマイズ可能なプログラムによる、またはコンソール駆動によるデプロイメントです。 |
ガバナンスの実施と迅速なデプロイメントを行う機能があります。 |
『Oracle Fusion Middleware Oracle Service Bus開発者ガイド』
『Oracle Fusion Middleware Oracle Service Bus管理者ガイド』
『Oracle Fusion Middleware Oracle Service Busデプロイメント・ガイド』