は私があなたにこれらの用語を明確にしてみましょう:
バス ESBアーキテクチャのコンテキストでメッセージのディスパッチのためのシンプルなキューとして考えるべきではありません。異なるサービスの統合を可能にするために、ESBはさらに多くを提供します。 ESBの重要な追加機能:
- ルーティング。メッセージは、メッセージの内容やエンドポイントの仕様に応じて、異なるサービスにルーティングできます。
- 異なるフォーマット間のメッセージ変換/メディエーション
- トランスポートプロトコルの変換。 ESBは、異なるトランスポートプロトコル(JMS、HTTP/S、純粋なTCPなど)を使用するアプリケーション をシームレスに統合できる必要があります。
- メッセージの強化。さらに処理する前に、欠落したデータでメッセージを充実させることができます。
- セキュリティ
- 管理し、それらのfunctionalitesがESB内で動作するサービスによって提供され
を監視します。サービスはエンドポイント - 一意の一意の「アドレス」を介して相互に接続します。エンドポイント間でディスパッチされたメッセージは、の転送(メッセージのペイロードをカプセル化するメソッド/プロトコル)を使用しています。ネイティブに異なるトランスポートを使用するアプリケーションでは、適切なアダプタを介してESBに接続する必要があります。これは、必要なトランスポート変換を提供するサービスです。このようにして、ESBを使用するアプリケーションは互いに分離され、変換自体を行う必要はありません。
もちろん、これらは用語のごく簡単な説明です。エンタープライズサービスバスは、特定の種類のアーキテクチャ(またはコンセプト)の唯一の用語ですが、どのような方法でも標準化されていません。したがって、特定の実装は互いに非常に異なる場合があります。 標準化されたESBに興味がある場合は、JBI(Java Bussiness Integration)をご覧ください。 JBIのオープンソースの実装には、Apache ServiceMix,Mule,OpenESBなどがあります。マニングが出版した "Open Source ESBs in Action"の書籍には、ESB技術の紹介があります。