Mulesoft-introduction-to-mule-esb
MuleSoft-Mule ESBの紹介
ESBは Enterprise Service Bus の略で、基本的にバスのようなインフラストラクチャ上でさまざまなアプリケーションを統合するためのミドルウェアツールです。 基本的に、それは統合されたアプリケーション間で作業を移動する均一な手段を提供するように設計されたアーキテクチャです。 このようにして、ESBアーキテクチャの助けを借りて、通信バスを介してさまざまなアプリケーションを接続し、互いに依存せずに通信できるようにすることができます。
ESBの実装
ESBアーキテクチャの主な焦点は、システムを相互に分離し、安定した制御可能な方法で通信できるようにすることです。 ESBの実装は、次のように*「バス」および「アダプター」*の助けを借りて行うことができます-
- JMSやAMQPなどのメッセージングサーバーを介して実現される「バス」の概念は、異なるアプリケーションを互いに分離するために使用されます。
- バックエンドアプリケーションと通信し、データをアプリケーション形式からバス形式に変換する「アダプター」の概念は、アプリケーションとバスの間で使用されます。
バスを介して1つのアプリケーションから別のアプリケーションに渡されるデータまたはメッセージは標準形式であり、1つの一貫したメッセージ形式があることを意味します。
アダプタは、セキュリティ、監視、エラー処理、メッセージルーティング管理などの他のアクティビティも実行できます。
ESBの指導原則
これらの原則は、統合の基本原則と呼ぶことができます。 彼らは次のとおりです-
- オーケストレーション-データとプロセス間の同期を実現するための2つ以上のサービスの統合。
- 変換-データを標準形式からアプリケーション固有の形式に変換します。
- トランスポート-FTP、HTTP、JMSなどの形式間のプロトコルネゴシエーションの処理
- 調停-サービスの複数のバージョンをサポートするために複数のインターフェースを提供します。
- 非機能一貫性-トランザクションとセキュリティを管理するためのメカニズムを提供します。
ESBの必要性
ESBアーキテクチャにより、各アプリケーションが通信できるさまざまなアプリケーションを統合できます。 ESBを使用するタイミングに関するガイドラインを次に示します-
- * 2つ以上のアプリケーションを統合する*-ESBアーキテクチャの使用は、2つ以上のサービスまたはアプリケーションを統合する必要がある場合に有益です。
- 将来さらに多くのアプリケーションを統合-将来さらに多くのサービスやアプリケーションを追加したい場合は、ESBアーキテクチャの助けを借りて簡単に行うことができます。
- 複数のプロトコルの使用-HTTP、FTP、JMSなどの複数のプロトコルを使用する必要がある場合、ESBが適切なオプションです。
- メッセージルーティング-メッセージコンテンツおよび他の同様のパラメータに基づいてメッセージルーティングが必要な場合に、ESBを使用できます。
- 構成と消費-構成と消費のサービスを公開する必要がある場合は、ESBを使用できます。
P2P統合と ESB統合
アプリケーションの数の増加に伴い、開発者の前での大きな疑問は、異なるアプリケーションを接続する方法でしたか? この状況は、さまざまなアプリケーション間の接続を手作業でコーディングすることで処理されました。 これは、「ポイントツーポイント統合」と呼ばれます。
- 剛性*は、ポイントツーポイント統合の最も明らかな欠点です。 接続とインターフェイスの数が増えると、複雑さが増します。 P-2-P統合の欠点により、ESB統合が可能になります。
ESBは、アプリケーション統合へのより柔軟なアプローチです。 各アプリケーション機能をカプセル化して、個別の再利用可能な機能のセットとして公開します。 他のアプリケーションと直接統合するアプリケーションはありませんが、以下に示すように、ESBを介して統合します
統合を管理するために、ESBには次の2つのコンポーネントがあります-
- Service Registry -ESBに公開されているすべてのサービスが公開および登録されているMule ESBにはService Registry/Repositoryがあります。 他のアプリケーションのサービスと機能を利用できる場所からの発見のポイントとして機能します。
- 集中管理-名前が示すように、ESB内で発生する相互作用のパフォーマンスのトランザクションフローのビューを提供します。
- ESB機能*-VETROの略語は、一般にESBの機能を要約するために使用されます。 それは次のとおりです-
- V (検証)-名前が示すように、スキーマ検証を検証します。 検証パーサーと最新のスキーマが必要です。 1つの例は、最新のスキーマを確認するXMLドキュメントです。
- E (Enrich)-メッセージに追加データを追加します。 目的は、ターゲットサービスにとってメッセージをより意味のある便利なものにすることです。
- T (Transform)-データ構造を標準形式または標準形式から変換します。 例は、日付/時刻、通貨などの変換です。
- R(ルーティング)-メッセージをルーティングし、サービスのエンドポイントのゲートキーパーとして機能します。
- O (操作)-この機能の主な仕事は、ターゲットサービスを呼び出すか、ターゲットアプリと対話することです。 バックエンドで実行されます。
VETROパターンは統合に全体的な柔軟性を提供し、一貫性があり検証されたデータのみがESB全体にルーティングされるようにします。
ESB Muleとは何ですか?
Mule ESBは、MuleSoftが提供する軽量で拡張性の高いJavaベースのエンタープライズサービスバス(ESB)および統合プラットフォームです。 ESB Mule ESBにより、開発者はアプリケーションを簡単かつ迅速に接続できます。 Mule ESBを使用すると、アプリケーションで使用されるさまざまなテクノロジーに関係なく、アプリケーションを簡単に統合して、データを交換できます。 ESB Muleには次の2つのエディションがあります-
- コミュニティ版
- エンタープライズ版
Mule ESBの利点は、両方のエディションが共通のコードベースで構築されているため、Mule ESBコミュニティからMule ESBエンタープライズに簡単にアップグレードできることです。
ESB Mule ESBの機能と機能
Mule ESBには次の機能があります-
- シンプルなドラッグアンドドロップのグラフィカルなデザインです。
- ESB Muleは、視覚的なデータのマッピングと変換が可能です。
- ユーザーは、事前に構築された何百もの認証済みコネクタの機能を取得できます。
- 集中監視および管理。
- 堅牢なエンタープライズセキュリティ実施機能を提供します。
- API管理の機能を提供します。
- クラウド/オンプレミス接続用の安全なデータゲートウェイがあります。
- ESBに公開されるすべてのサービスが公開および登録されるサービスレジストリを提供します。
- ユーザーは、Webベースの管理コンソールを介して制御できます。
- サービスフローアナライザーを使用して、迅速なデバッグを実行できます。