WebSphere® Event Broker は、最近メッセージング・アプリケーションで使用されているいくつかのプログラミング・インターフェースをサポートしますが、固有のプログラミング・インターフェースは提供しません。
MQI は、キュー・マネージャーの WebSphere MQ ネットワークを介して、アプリケーションが他のアプリケーションと対話できるようにする、少数の呼び出しを提供します。呼び出しは、個々のメッセージおよびすべてのメッセージに対する処理オプションの豊富な選択を提供する、広範囲のパラメーターをサポートします。
MQI を使用するクライアント・アプリケーションは、サポートされる任意の WebSphere MQ オペレーティング・システム上で稼働することができ、したがって、言語または関数についての制限が、そのオペレーティング・システムの関連する製品によって定義されます。
MQI については、WebSphere MQ バージョン 6 インフォメーション・センター・オンラインの「アプリケーション・プログラミング・リファレンス」および「アプリケーション・プログラミング・ガイド」セクションに、または (WebSphere MQ バージョン 5.3 の場合)、WebSphere MQ ライブラリー Web ページの「アプリケーション・プログラミング・ガイド」および「アプリケーション・プログラミング・リファレンス」の資料で説明されています。 このインターフェースを使用するクライアントで使用できるプログラミング言語とオペレーティング・システムのサポートに関する詳細も記載されています。
AMI は、アプリケーション・プログラム外部のオプション・パラメーターの選択を中央制御することによって、アプリケーション・プログラマーの作業を単純化するよう設計されています。 これはまた、メッセージ・ブローカーから使用可能な、さらに拡張された機能を提供します。 AMI は、ブローカーを使用する、またそれを使用しない、一般メッセージング・アプリケーション用に設計されています。
AMI の主な機能は、ポリシーおよびサービスとして知られる、オプションの管理者定義パケットです。 アプリケーションは、基礎となる必要なメッセージング・サポートを判別するサービスを指定し、ポリシーをメッセージの送受信に関連付けて、優先順位などのメッセージ処理の属性を制御します。
ポリシーとサービスにより、アプリケーションは MQRFH2 ヘッダーと MQI インターフェースの詳細を理解する必要がなくなります。
AMI を使用するクライアント・アプリケーションは、このインターフェースによってサポートされるオペレーティング・システムおよびプログラム言語に制限されます。 AMI は、WebSphere MQ バージョン 6 インフォメーション・センター・オンラインの「パブリッシュ/サブスクライブ・ユーザーズ・ガイド」セクションか、あるいは (WebSphere MQ バージョン 5.3 の場合) WebSphere MQ ライブラリー Web ページの「パブリッシュ/サブスクライブ・ユーザーズ・ガイド」で定義されています。
JMS は、メッセージ処理用の Java 言語機能を提供するアプリケーション・プログラミング・インターフェースです。 Sun Microsystems, Inc. と IBM® との業務提携を含む、メッセージング・ベンダーによって開発された JMS API は、WebSphere MQ などの、多様な業務用メッセージング・システムにアクセスするための共通インターフェースを提供します。 このインターフェースは、Point-to-Point およびパブリッシュ/サブスクライブ・アプリケーションに適しています。
JMS のメッセージ・クライアントは JMS クライアントと呼ばれ、メッセージング・システムは JMS プロバイダーと呼ばれます。 JMS アプリケーションは、JMS クライアントと少なくとも 1 つの JMS プロバイダーで構成されるビジネス・システムです。 JMS インターフェースを使用するクライアント・アプリケーションは、Java プログラム言語で作成されており、したがって、それぞれのオペレーティング・システム上でサポートされる JVM のレベルに合った制限を受けます。
詳細は、WebSphere MQ バージョン 6 インフォメーション・センター・オンラインの Java の使用のセクションか、または (WebSphere MQ バージョン 5.3 の場合) WebSphere MQ ライブラリー Web ページの Java の使用 の資料を参照してください。
これらの呼び出しについては、WebSphere MQ Mobile Transportで説明しています。
これらのメッセージについては、WebSphere MQ Telemetry Transportで説明しています。
これらのインターフェースに書き込む、既存のエンド・ユーザー・アプリケーションがある場合には、それらは一般に、ブローカー環境で未変更のまま実行することができます。 適切な入力ノードおよび出力ノードを使用し、サポートされるプロトコルを介して、これらのアプリケーションと対話するメッセージ・フローを作成する必要があります。WebSphere Event Broker は、そのサポートされているプロトコル用の組み込みの入出力ノードを提供します。
また、ブローカーと対話する、新規エンド・ユーザー・アプリケーションを作成することもできます。
WebSphere Event Broker には、多数の WebSphere MQ ヘッダー用のパーサーがあるので、WebSphere MQ Enterprise Transport、WebSphere MQ Mobile Transport、および WebSphere MQ Telemetry Transport プロトコルを介して、これらのヘッダーを含むメッセージを受信することができます。
メッセージには最初のヘッダーとして WebSphere MQ メッセージ記述子 (MQMD) が組み込まれていなければなりません。 これは、すべてのメッセージにおいて、ユーザー・データまたはアプリケーション・データより前に置かれる必要があります。MQMD には、メッセージと共に伝達する必要のある、次のような基本制御情報が含まれています。
メッセージが WebSphere Event Broker ブローカーによって処理される際、通常は (しかし必ずしもそうとは限らない)、1 つ以上の追加ヘッダーがあります。MQMD に続くヘッダーは必ず、MQMD 内のフォーマット・フィールドで識別され、それ自体には、続くヘッダーかユーザー・データのフォーマットのいずれかを示す別のフォーマット・フィールドが含まれます。
追加ヘッダーには、次のものを組み込むことができます。
WebSphere MQ テクノロジーを基にしたサポート対象プロトコルを使用する、WebSphere Event Broker 環境用に作成するすべての新規アプリケーションで、MQRFH2 ヘッダーを使用してください。 MQRFH2 ヘッダーは、メッセージ本体の直前になければなりません (つまり、最後のヘッダーにすること)。
MQRFH2 ヘッダーを組み込まない場合は (WebSphere MQ テクノロジーを基にしていないサポート対象プロトコルを使用するアプリケーションの場合は通常そうなります)、(入力ノードのプロパティーを設定することにより) メッセージ特性を指定して、メッセージを処理するメッセージ・フローを構成しなければなりません。