Spring ActiveMQ消息重发机制

《重发机制的实现》

<bean id="activeMQRedeliveryPolicy" class="org.apache.activemq.RedeliveryPolicy">

<!--是否在每次尝试重新发送失败后,增长这个等待时间 -->

<property name="useExponentialBackOff" value="true"></property>

<!--重发次数,默认为6次   这里设置为1次 -->

<property name="maximumRedeliveries" value="1"></property>

<!--重发时间间隔,默认为1秒 -->

<property name="initialRedeliveryDelay" value="1000"></property>

<!--第一次失败后重新发送之前等待500毫秒,第二次失败再等待500 * 2毫秒,这里的2就是value -->

<property name="backOffMultiplier" value="2"></property>

<!--最大传送延迟,只在useExponentialBackOff为true时有效(V5.5),假设首次重连间隔为10ms,倍数为2,那么第 

二次重连时间间隔为 20ms,第三次重连时间间隔为40ms,当重连时间间隔大的最大重连时间间隔时,以后每次重连时间间隔都为最大重连时间间隔。 -->

<property name="maximumRedeliveryDelay" value="1000"></property>

</bean>

<!--在连接工厂处配置重发机制 -->

<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">

<property name="brokerURL" value="tcp://localhost:61616"></property>

<property name="redeliveryPolicy" ref="activeMQRedeliveryPolicy" />  <!-- 引用重发机制 -->

</bean>

猜你喜欢

转载自zengshaotao.iteye.com/blog/2414478
今日推荐