Red Hat Training

A Red Hat training course is available for JBoss Enterprise SOA Platform

第1章 ESB (Enterprise Service Bus)

1.1. ESB (Enterprise Service Bus) とは?

本書は、金融機関、保険ビジネス、公共団体、通信業界などの大企業で JBoss Enterprise SOA Platform 向けのプログラムを行うソフトウェア開発者を対象としています。本書では、読者に JBoss Enterprise SOA Platform の概念を理解いただけるように、アプリケーション構築の詳細資料を提供し、主要コンポーネント関連の理論を説明しています。
ESB は、サービス指向アーキテクチャーの主要部となっており、ビジネスロジックではなく、インフラストラクチャーロジックを処理しています。ただし、SOA は単なる技術や製品ではなく、実際の技術とは関係のない多くの側面 (アーキテクチャー、方法、組織など) を持つ設計スタイルだと言えます。しかし、いずれは具体的な実装に対して抽象的な SOA をマップする必要が出てきます。そのような時に ESB が必要となります。

1.2. 実際に ESB を使用できる場面とは?

JBoss Enterprise SOA Platform を役立たせることができる実例をいくつか以下に図で示します (これらは相互運用性のない JMS 実装を使用しているもの同士の通信に固有の例となりますが、その原理は汎用であり FTP や HTTP などの他のトランスポートにも適用が可能です)。
1 番目の図ではメッセージングキューがない 2 システム間のシンプルなファイル移動を示しています。
シンプルなファイル移動

図1.1 シンプルなファイル移動

次の図では、同様のシナリオに変換のアクションを追加しています。
変換とシンプルなファイル移動

図1.2 変換とシンプルなファイル移動

キューも追加されました。
変換とキューを使用する簡単なファイル移動

図1.3 変換とキューを使用する簡単なファイル移動

JBossESB は複数パーティのシナリオ以外でも使用できます。たとえば、以下の図ではファイルシステムを使った ESB 経由の基本的なデータ変換を示しています。
基本的なデータ変換

図1.4 基本的なデータ変換

最後のシナリオも変換アクションとキューシステムを使った単一パーティの例になります。
変換とキュー

図1.5 変換とキュー

次の章では JBoss ESB のコンセプトについて、また SOA ベースのアプリケーション開発を行う場合にそのコンセプトをどのように使用できるかについて見ていきます。