他の MOM 製品クライアントとのデータ交換
FioranoMQ では、JMS クライアントが他の MOM 製品のクライアントとの間でデータ交換が行えるブリッジと呼ぶ機能を実装しています。
FioranoMQ ブリッジは、他社のメッセージング サーバー製品との間のインターオペラビリティを実現するためのコンポーネントです。
JMS に準拠したサーバー製品との通信は、JMS API を用いて行うことができます。
MSMQ との間の通信には、MSMQ Java API を用いる必要があります。
同様に、Tibrv との間では、Tibrv Java API を用いる必要があります。
FioranoMQ ブリッジは、このような API の違いを吸収します。
これによって、FioranoMQ のクライアントは、他のメッセージング サーバー (JMS サーバー、非 JMS サーバーを問いません) のクライアントとの間でメッセージの送受信が行えるようになります。
ソース キュー (SQ) と ターゲット キュー (TQ)
ブリッジによって FioranoMQ と他社のメッセージング サーバーとの間でメッセージ送信を行う際には、ソース キュー (SQ) およびターゲット キュー (TQ) と呼ぶブリッジ用の 2つのキューを用意します。
この キューは、それぞれのサーバーでコンフィグします。
- ソース キュー (SQ) : クライアント アプリケーションは、常にソース キュー (SQ) に対してメッセージを送信します。
SQ に送られてきたメッセージは、ブリッジによって読み取られ、対応するターゲット キュー (TQ) に転送されます。
SQ は、FioranoMQ のキューとしても、あるいは相手側の他社メッセージング サーバーのキューとしても存在します。
- ターゲット キュー (TQ) : ターゲット キュー (TQ) は、メッセージ送信の最後に位置するキューです。
ブリッジは SQ から受け取ったメッセージを対応する TQ に転送し、相手側クライアント アプリケーションがメッセージを受け取れるようにします。
TQ は、FioranoMQ のキューとしても、あるいは相手側の他社メッセージング サーバーのキューとしても存在します。
アプリケーション例
次の図は、SQ、TQ、ブリッジの関係を示しています。
例えば、アプリケーション A は ATM の処理を行うアプリケーションで、メッセージ交換に FioranoMQ を使用しているものとします。
このアプリケーションは、口座情報の問い合わせリクエストを受け取るとアプリケーション B にそのリクエストを転送し、アプリケーション B からリターンされてきた口座情報を受け取るよう設計されています。アプリケーション B は、口座情報を検索するアプリケーションで、メッセージ交換に IBM の WebSphereMQ を用いています。
- アプリケーション A が、口座情報検索のメッセージを SQ1 に送ります 。この SQ 1 は、FioranoMQ のキューです。
- ブリッジが SQ1 上のメッセージを読み取ります。
次に、メッセージ ヘッダーのデータを IBM WebSphere MQ のフォーマットに変換します。そして、TQ1 に変換後のメッセージを送ります。この TQ 1 は、WebSphere MQ のキューです。
- アプリケーション B は、TQ 1 からメッセージ (口座情報検索リクエスト) を受け取ります。
検索された口座情報は、上の手順と同様に SQ2 ブリッジ (ヘッダーの変換) TQ2 と流れ、アプリケーション A によって受信されます。
|