3
我們可以控制MDB中的交易重試間隔嗎?如果是這樣,請提供一個例子或指導我參考文檔。我們希望爲MDB交易設置一個3分鐘的時間間隔。期望的是,如果查詢第一次失敗,那麼它在3分鐘的時間過後重試。MDB交易重試間隔
我們可以控制MDB中的交易重試間隔嗎?如果是這樣,請提供一個例子或指導我參考文檔。我們希望爲MDB交易設置一個3分鐘的時間間隔。期望的是,如果查詢第一次失敗,那麼它在3分鐘的時間過後重試。MDB交易重試間隔
Vairam;
查看關於Message Redelivery的Hornet文檔。您需要考慮的問題有:
設置重新傳遞延遲
延遲重新傳遞是在地址設定的配置定義的。
實施例:
<!-- delay redelivery of messages for 3m -->
<address-setting match="jms.queue.exampleQueue">
<redelivery-delay>300000</redelivery-delay>
</address-setting>
設置
這可以通過在地址設定配置指定DLQ配置聲明性地定義重複傳遞的最大數量和DLQ配置:
實施例:
<!-- undelivered messages in exampleQueue will be sent to the dead letter address
deadLetterQueue after 3 unsuccessful delivery attempts
-->
<address-setting match="jms.queue.exampleQueue">
<dead-letter-address>jms.queue.deadLetterQueue</dead-letter-address>
<max-delivery-attempts>3</max-delivery-attempts>
</address-setting>
如果您想在指定的重新傳送失敗次數後丟棄消息,請檢查消息頭值「JMSXDeliveryCount」,如果該數字等於最大重新傳送次數,則僅禁止任何異常並提交事務。
感謝您的重播尼古拉斯。我們用hornetq使用jms。 – vairam
您好,非常感謝您的回覆。有沒有任何API可以查看隊列中的消息數量。以便我們查看隊列中的消息。 – vairam