2016-12-06 14 views
0

(JMSトピック加入者を使用して)E​​MSまたはTibcoのトピックのメッセージの順序配信を制御する方法はありますか?メッセージセレクタのようなものですが、注文するためにフィルタリングする代わりに。EMSまたはBWでのJMS配信順序

JMSXDeliveryCountのようなヘッダーを使用して、新しいメッセージが優先されるようにしたいと思います。私はRedeliveryDelayがあることを知っていますが、それはトピックではなくキューに対してのみ機能します。

メッセージをトピックサブスクライバで取得した後に設定できる場合でも、JMSPriorityを設定することもできます。それをしてもいいですか?たぶんJavaコードの活動ですか?

答えて

0

JMSPriorityは確かにオプションですが、それはすでに受信したメッセージに設定することはできません。解決方法は、メッセージを確認して別の優先順位で再公開することです。

0

ブローカはメッセージを受信すると順番にメッセージを配信しますが、メッセージの並べ替えは分散コンピューティング/ EIPの問題です(シーケンサを参照)。問題はブローカーが、メッセージの数を確認したり、メッセージを並べ替えるためにウィンドウを開いたままにしておく時間を知っていないことです。このアクティビティは、その情報が理解されているアプリケーションのブローカ外で行うのが最適です。

EIPフレームワークとESBは、このタイプのワークフローのハンドラを標準化するという素晴らしい仕事をしています。

REF:EIPシーケンサーhttp://www.enterpriseintegrationpatterns.com/patterns/messaging/MessageSequence.html

+0

私の質問はキャメルではなくEMSについてです。 –

+0

右。私はCamelのドキュメンテーションと構文を使ってロジック/アルゴリズムを説明していました。任意のEIPまたは統合フレームワークが機能を実行できます。ポイントは..ブローカーには依存しないでください。 –

+0

Camelの再シーケンサの例への参照を削除するために私の答えを編集しました –

関連する問題