1

メッセージング ミドルウェア ソリューション (JMS、Tibco など) では、特定の「トピック」のすべてのメッセージをサブスクライブするために、ワイルドカードを使用した「トピック」フィルタリングでパブリッシュ/サブスクライブが可能です。 「ACCOUNT.WITHDRAW」メッセージと「ACCOUNT.CHECKBALANCE」メッセージ。

問題は、そのようなサブスクリプションが自分の発行したメッセージも受信することです。

送信されるデータをいじることなく、トランスポート層によってオンまたはオフにできる、たとえばUDPマルチキャストループバックに似たメカニズムを探しています。

同じサービス インスタンスが発行したメッセージを受信しないようにミドルウェアを構成する、一般的な宣言型 (カスタム コードなし、構成のみ) の方法はありますか? 理想的には、これにより、同じ「種類」のすべてのサーバー (ノード) によって公開されたすべてのものを除外できるはずです。

前もって感謝します。

4

2 に答える 2

0

誰も答えていないので、私がチャイムを鳴らします(手を振る方法で)。

自分が送信したメッセージをトピック レシーバーに返すかどうかを制御することに関して、 JMS 仕様には何もないと思います。したがって、このような機能は移植性のないベンダーの機能になります。特に2番目の要件(JMSクライアントの「種類」と、送受信を行う同じ接続に基づく何らかの制御に基づく)の場合。

コードやメッセージ コンテンツ (プロパティ) を変更する柔軟性がない場合は、移植可能なソリューションがないと思います。そして、その2番目の「種類の」要件に対する解決策はおそらくまったくありません。

ベンダー固有のオプションを調査したい場合は、関心のあるベンダーをお知らせください。何も得られない場合もありますが、尋ねずに知る方法はありません。

于 2009-07-28T22:18:59.287 に答える