oracle enterprise service busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...esb...

20
Oracle Enterprise Service Bus: 技術アーキテクチャおよび製品に関する更新 Dave Berry: Sr. Manager, Oracle Integration Demed LHer:Sr. Principal Product Manager, Oracle Integration

Upload: ngolien

Post on 15-Apr-2018

234 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

Oracle Enterprise Service Bus: 技術アーキテクチャおよび製品に関する更新

Dave Berry: Sr. Manager, Oracle IntegrationDemed L’Her:Sr. Principal Product Manager, Oracle Integration

Page 2: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

プログラム

Oracle Enterprise Service Busの概要

• Oracle SOA Suiteの基盤

• 機能:仮想化、変換、ルーティング

アーキテクチャ

• クラスタ、ライフ・サイクル管理

• トランザクション、例外処理

結論

• まとめ

Page 3: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

Oracle Fusion Middleware

ユーザー・インタラクションユーザー・インタラクション

ビジネス・インテリジェンスビジネス・インテリジェンス

統合およびプロセス管理統合およびプロセス管理

アプリケーション・サーバーアプリケーション・サーバー

グリッド・インフラストラクチャグリッド・インフラストラクチャ

システム管理システム管理

ID管理ID管理

開発ツール開発ツール

ポータル、コンテンツ、検索、デスクトップ、モバイル、VoIP

ETL、Q&A、OLAP、レポート、アラート、

リアルタイム

メッセージング、ESB、BPM、B2B、BAM、MDM

J2EE、WS-*、イベント、ルール

クラスタ、メタデータ、レジストリ、セキュリティ

SOAツールおよびフレーム

ワーク

システム・アプリケーション・サービス

ディレクトリ・プロビジョニング、シングル・サインオン、ID管理

Page 4: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

Oracle SOAのプラットフォーム

BPA SuiteBPA Suite BAMBAM BIBI

JDeveloperJDeveloper BPEL Process ManagerBPEL Process Manager

Enterprise Service BusEnterprise Service Bus

AdaptersAdapters B2BB2B SESSES

Enterprise ManagerEnterprise Manager

Web Services ManagerWeb Services Manager

RegistryRegistry

分析ツール

パートナ

ビジネス監視 分析

アプリケーション開発用

フレームワーク

ヒューマン・ワークフロー

ネイティブBPEL

ビジネス・ルール

XSLT変換

マルチ・プロトコル

ルーティング

アプリケーション

DB レガシー RFID

ポリシー

システム監視

セキュリティ

UDDI

メッセージング J2EEアプリケーション・サーバーOracle Application Server、JBoss、WebLogic、WebSphere

イベント

Page 5: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

Oracle Enterprise Service Bus:SOAの基盤

ESBは、統合の問題をアプリケーションとビジネス・ロジックから切り離すためのマルチプロトコル・ファブリックです

達成方法

1. エンドポイントの仮想化:リソースからサービスへ2. 変換: データをターゲット・フォーマットへ変換3. ルーティング:さまざまなプロトコルを介した確実なデータの転送およびルーティング

すべてをWebサービスで公開

1. 標準ベース:XPath、XSLT、SOAP、JMS、JCA、…2. ホット・プラガブル:J2EE、JMS、データベース、…

Page 6: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

パターン

ファンイン/ファンアウト- 1方向の保存および転送- 同期または非同期- 複数トランザクション- エンドツーエンド

レスポンス転送- 1方向インバウンド- 2方向アウトバウンド- コールアウト・レスポンスに基づいたルーティング- オリジナル・ドキュメントの転送

仮想化サービス- 2方向同期- コンテンツ・ベースのレスポンダ- 静的インバウンドWSDL- 運用面の柔軟性

Page 7: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

アーキテクチャメタデータ・サーバー – 統合サーバー• セントラルDTインタフェース:JDeveloper、ESB Control、

インポート/エクスポート

• JMSを介したトランザクションとしてRTサーバーにプッシュされる変更

• ESB Controlに集中された管理/監視

• 構成可能なバックエンド・リポジトリ:データベース、WebDAV

ランタイム・サーバー• 迅速なメモリー・サービスおよびアーティファクト・キャッシュ

• 柔軟なトポロジ、クラスタリング、外部ロード・バランシング

• スケーラビリティの基礎になるユニットとしてのESBシステム

• 非同期ルーティング・ルールによる分散バス型トポロジの有効化

基礎になるJ2EEアーキテクチャの利用• J2EEアプリケーションとして稼働

• JMSプロバイダの使用

• トランザクション、スケーラビリティ、高可用性

Page 8: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

3層のアーキテクチャ

UI層

中間層

データ層

JDev(設計)

ESB Control(監視)

メタデータ・サーバー ランタイム・サーバーJMS

JDBCJDBC

登録のインポート

同期エクスポート

更新ルーティング 監視

アーティファクト

XSD、XSLTWSDL、マップ

リレーショナル

サービスMD、

ルーティング・ルール、インスタンス、エラー

Page 9: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

Oracle ESBのキューイング・アーキテクチャ

制御トピック(コンテンツ・メッセージ)

監視トピック(トラッキング)

エラー・トピック(エラー)

制御

非同期トピック

再試行トピック

監視トピック(トラッキング)

エラー・トピック(エラー)

MDS

ランタイム・サーバー

データ層

ORAESBスキーマ-サービス・データ-インスタンス・データ

内部トピック

制御トピック

非同期トピック

再試行トピック

監視トピック

エラー・トピック

エラー・ホスピタル

Page 10: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

共有メタデータ・クラスタ

柔軟なクラスタ・トポロジ• 単一障害点の不在 – 配信の保証• 粒度の最低レベルであるESBシステム• ESBクラスタに構成されるESBシステム:多対1• 1つのESBクラスタに構成されるESB RTサーバー(多数のシステム)

高可用性を得るための対称型• 同一クラスタに対して構成されたすべてのシステム• すべてのRTサーバーが同一クラスタをロード

スケーラビリティを得るための非対称型• 複数システムによる多数のクラスタ• RTサーバーが異なるクラスタをロード

• 最適化されたサービス・メモリー・キャッシュ

ベスト・プラクティス:混合型のクラスタ・トポロジ• 対称型サービス・クラスタと非対称型サービス・クラスタの組合せ• 外部ロード・バランサ:外部“仮想”ホスト/ポートを持つESBシステム

Page 11: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

柔軟な配置戦略非対称

対称

Siebel PSFT

ESBデフォルト・クラスタ

クラスタ = Siebel クラスタ = PSFT

ロード・バランサ

顧客の更新 新規従業員

インボイスの作成

顧客の更新 新規従業員

インボイスの作成

顧客の更新

インボイスの作成

顧客の更新 新規従業員

インボイスの作成

顧客の更新 新規従業員

インボイスの作成

新規従業員顧客の更新

インボイスの作成

メタデータ・リポジトリにおけるサービス

Page 12: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

ESBシステム/クラスタの構成

ESBシステム

エラー・トピック

エラー通知

ESBクラスタ

バインド・ホスト

バインド・ポート

遅延トピック

•ESB_Parameter表 “DT_OC4J_HOST”•“esb_config.ini”ファイル cluster_name=ESB

Page 13: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

ライフ・サイクル管理主要な開発ツールのJDeveloper• モデル・サービス、アダプタ、変換、ルーティング・ルール

• サービス・メタデータをMDS/統合サーバーへ登録

• MDが変更するESB Controlに対するMDSとの同期

サービスの再構成のためのESB Control• ESBシステムの構成:クラスタおよびロード・バランサ情報

• エンドポイント・プロパティの構成:サービス・ロケーション、リトライ、ファイル、ディレクトリ...

• Trackable Fieldsおよびドメイン値マッピングの定義

• ルーティング・ルール、フィルタ式の編集

エクスポート/インポート• システムまたはサービス・レベルの粒度を持つAntベースのスクリプト

• 開発、テスト、本番環境へ:JDev→MDS→エクスポート→zip→インポート…• JNDI、エンドポイント・プロパティ、Antのカスタム・タスクによる

エンドポイントの管理

Page 14: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

ライフ・サイクル管理

RCS

JDeveloper MDサーバー

RTサーバー

ESB開発インスタンス

メタデータコンソール

エクスポート md.zip インポート

MDサーバー

RTサーバー

ESBテスト・インスタンス

メタデータ

コンソール

エクスポート md.zip インポート

MDサーバー

RTサーバー

ESB本番クラスタ

メタデータ

コンソール

開発

テスト

本番環境

開発

 JDeveloper + RCS

配置

• JDevから

• Antスクリプト対応インポート/エクスポート・

スクリプト経由

監視

• ESB Console

• AS Control

Page 15: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

トランザクション

グローバルなエンドツーエンドのJTA/XAトランザクション

• BPEL⇔ESB⇔BPEL

• JCA⇔ESB⇔WSIFインバウンド・グローバル・トランザクションを継承するESB• “非同期”ルーティング・ルールによって現在のトランザクション

範囲が終了

• ESBシステムによってグループ分けされる、ESBが開始した

新しいトランザクション

トランザクションの例外処理およびロールバック

• イニシエータにロールバックされる既存のインバウンド・トランザクションのエラー

• ESBが開始したトランザクションのエラーの再送信が可能

• エンドツーエンドのメッセージ・フローは、トランザクション状態または所有者にかかわらず最初に失敗したサービスで終了

Page 16: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

トランザクション・オーバーレイ

新規のトランザクションである非同期のルール

同期ルールのみ

同一のESBシステム・ルールで非同期

異なるESBシステム・ルールで非同期

Page 17: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

例外処理

ESB Controlエラー・ホスピタル

• オリジナル・ドキュメントを含むすべての障害フローの表示

• ESBが開始したトランザクションの“リトライ可能”なエラーの再送信/編集

• ロードマップ:バッチの再送信、自動リトライ

ESB Controlインスタンス・トラッキング

• オリジナル・ドキュメントを含むすべての障害フローの表示

• ESBが開始したトランザクションの“リトライ可能”なエラーの再送信/編集

• ロードマップ:管理API非トランザクション・エンドポイント

• ファイル、FTP、SOAP ...• デフォルトおよびカスタム例外ハンドラ:File:// JMS:// BPEL://

Page 18: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

インスタンス・データにおける例外処理

• トランザクションの影響

• エラー・メッセージ、トレース、ペイロード

• 再送信可能なエラー

Page 19: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです

結論

SOAインフラストラクチャに適切なアーキテクチャ• どのJ2EEアプリケーション・サーバーにも配置

柔軟なトポロジ

• 高可用性およびスケーラビリティ

• 外部ロード・バランシング

信頼性の高いアーキテクチャ

• 完全なトランザクション・サポート

• 構成可能な例外処理

構成可能なライフ・サイクル管理

• メタデータ・サーバー

詳細については、http://otn.oracle.com/soaを参照してください。

Page 20: Oracle Enterprise Service Busotndnld.oracle.co.jp/products/integration/esb/pdf/esb...ESB は、統合の問題をアプリケーションとビジネス・ロジック から切り離すためのマルチプロトコル・ファブリックです