使用useExponentialBackOff重新传递HornetQ消息

时间:2013-03-29 20:01:31

标签: java jms activemq messaging hornetq

在ActiveMQ中,可以在重新传递策略中设置useExponentialBackOff,这会在每次消息消耗失败时以指数方式增加延迟。如何在HornetQ中实现这一目标?

是否可以将自己的重新传递策略定义为java类?

1 个答案:

答案 0 :(得分:1)

应该有效:

<address-settings>
      <address-setting match="jms.queue.example">
         <dead-letter-address>jms.queue.deadletter</dead-letter-address>
         <max-delivery-attempts>5</max-delivery-attempts>
         <redelivery-delay>1000</redelivery-delay>
         <redelivery-delay-multiplier>2.0</redelivery-delay-multiplier>
      </address-setting>
</address-settings>
  • redelivery-delay-multiplier:这允许你实现一个 重新传递尝试之间的指数退避。
  • max-delivery-attempts:消息将转发到deadletter地址(如果已指定),
    在max-delivery-attempts尝试失败之后。
  • 重新传递延迟:HornetQ将在重新启动之前等待此延迟 消息