JMSキューからのメッセージを消費し、SOAPベースのWebサービスに送信しています。メッセージを送信しているWebサービスにメッセージの確実な配信を提供することを確認したいと思います。
私は2つのオプションを見ています。1。成功するまでルーター(推奨)を使用し、メッセージを送信できない場合は、DeadLetterQueueに入れます。2. JMSトランザクションを使用し、Webサービスへのメッセージの送信が失敗した場合、トランザクションをロールバックし、JMSメッセージはキューに残ります。
<jms:inbound-endpoint queue="ws.message"/>
<until-successful objectStore-ref="objectStore"
dlqEndpoint-ref="dlqChannel"
maxRetries="3"
secondsBetweenRetries="10">
...
</until-successful>
私は成功するまでルーターを使用する傾向がありますが、私が懸念しているのは、必須のObjectStoreが必要なことです。メッセージをデータベース/オブジェクトストアに保存したくありません。代わりに、メッセージをいくつかのJMSキュー/デッドレターキューにプッシュして、そこから消費します。
状況を処理するための役立つヒントや提案をいただければ幸いです。