2017-08-23 3 views
0

メッセージブローカーでWSO2 EI 6.1.1を使用し、エンドポイントでメッセージストアとメッセージプロセスを含むメッセージキューを作成しようとしました。メッセージは自動的にデッドレターチャネル(DLC)に移動されません - ブローカー - wso2 ei

エンドポイントをシャットダウンすると、メッセージプロセッサが非アクティブになり、メッセージはキューに残り、DLCに移動されません。

動作させるにはどうしたらよいですか?

おかげで、

ファリスShomou

答えて

0

これでメッセージプロセッサ/メッセージ・ストアと期待される動作:

  • 配信が成功しているまで、スケジュール設定したメッセージプロセッサがメッセージを送信しようとします(保証された 配送パターンを実装する方法を提供します)
  • サンプリングメッセージプロセッサは、メッセージ01を送信しますあなたはJMSトランザクションを管理したいとDLQに行くためのメッセージを持っている場合は非信頼性の高い方法で

(それが失われることがあります)、着信エンドポイントまたはJMSプロキシとセット必要なパラメータ(輸送をJMS使用しています。 jms.SessionAcknowledgement:wso2のドキュメントhttps://docs.wso2.com/display/EI611/JMS+Transactionsをご覧ください。

デッドレターチャネルEIPを実装するためにメッセージストア/プロセッサが使用されています.JMSストアはデッドメッセージをホストしています。他の場所に移動する

+0

ありがとうJean-Michel。 DLCのデフォルトの動作とメッセージをDLCに移動する方法は何ですか?私は、メッセージプロセッサパラメータ:max.delivery.attemptsを使用して再試行した後、メッセージがDLCに移動されると考えました。 –

+0

しかし、なぜメッセージプロセッサのパラメータ(max.delivery.attempts)が機能していないのですか? このパラメータを5 par exampleに設定しました。最初の試行でメッセージプロセッサが非アクティブになりました。 max.delivery.attempts、yesまたはnoに達する前に、メッセージプロセッサを非アクティブにしないでください。 –

+0

私が知る限り、max.deliver.attemptsの値は、特定の数の「失敗」の後にメッセージプロセッサを非アクティブにするために使用されます。しかし、私はいつも "-1"を使用しています(決して無効にしたくない)。フォーカスポイントは中断してはいけないエンドポイントです:サスペンド状態とタイムアウト状態のエラーコード= -1 –

関連する問題