activemq重发机制(消息发送失败后的重新发送)(代码片段)

技术宅home 技术宅home     2022-11-05     801

关键词:

一、写RedeliveryPolicy配置文件

<!-- 定义ReDelivery(重发机制)机制 ,重发时间间隔是100毫秒,最大重发次数是3次 -->  
    <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>  

 

二、引用RedeliveryPolicy的配置:

<!--创建连接工厂 -->  
<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">  
    <property name="brokerURL" value="tcp://localhost:61616"></property>  
    <property name="redeliveryPolicy" ref="activeMQRedeliveryPolicy" />  <!-- 引用重发机制 -->  
</bean>  

 

activemq-重发去重

activemq的consumer端也有窗口机制,通过prefetchSize就可以设置窗口大小。加入窗口是为了批量获取数据,同时可以设置optimizeAcknowledge来优化确认回复,优化确认一方面可以减轻client负担(不需要频繁的确认消息)、减少通信开销,... 查看详情

如何批量重发失败的短信

】如何批量重发失败的短信【英文标题】:HowtoresendfailedSMSinbulk【发布时间】:2013-04-2421:02:45【问题描述】:Twillio由于在活动进行中资金不足而未能发送150条短信。有没有办法批量重新发送这150条消息?谢谢!【问题讨论】:你... 查看详情

activemq的消息持久化机制

...可以恢复消息队列,消息系统一般都会采用持久化机制。ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,无论使用哪种持久化方式,消息的存储逻辑都是一致的。就是在发送者将消息发送出去后,消息中心首先将消息存储到... 查看详情

activemq消息发送与接收

推荐文章:ActiveMQ讯息传送机制以及ACK机制 ActiveMQ发送消息  1:创建链接工厂ConnectionFactory  2:创建链接Connection  3:启动session  4:创建消息发送目的地  5:创建生产者  6:发送消息消息发送类:packagecom.apt.s... 查看详情

rocketmq最佳实战

...消息发送成功。3).对于消息不可丢失应用,务必要有消息重发机制,例如如果消息发送失败,存储到数据库,能有定时程序尝试重发,或者人 查看详情

rabbitmq和kafka对于消费失败处理总结

.../p/7a6deaba34d2参考:https://my.oschina.net/dengfuwei/blog/1595047失败重发参考:https://www.cnblogs.com/xujishou/p/6288623.htmlconfirm模式重发消息,生成CorrelationData,重新发送发送消息时,消息发送成功,业务失败。业务成功消息发送失败?保证业务... 查看详情

(7)消息的确认和重发机制

...博客:https://www.jianshu.com/p/f5016f845d16可以参考官网:http://activemq.apache.org/what-is-the-prefetch-limit-for.htmlactivemq的consumer端也有窗口机制,通过prefetchSize就可以设置窗口大小。不同的类型的队列,prefetchSize的默认值也是不一样的通过上... 查看详情

activemq笔记2-消息持久化(代码片段)

...可以恢复消息队列,消息系统一般都会采用持久化机制。ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,无论使用哪种持久化方式,消息的存储逻辑都是一致的。也就是说发送者将消息发送出去后,消息中心首先将消息存储... 查看详情

activemq高级特性(代码片段)

...调用(一)、异步投递与确认签收回调 1.What?Why?  ActiveMQ支持同步、异步两种发送的模式将消息发送到broker,模式的选择对发送延时有巨大的影响。producer能达到怎样的产出率(产出率=发送数据总量/时间)主要受发送延时... 查看详情

activemq生产者发送消息失败:refuseconnect(代码片段)

在生产者发送消息时,出现如下报错:java.net.ConnectException:Connectionrefused:connect atjava.net.DualStackPlainSocketImpl.waitForConnect(NativeMethod)~[na:1.8.0_181] atjava.net.DualStackPlainSocketImpl.s 查看详情

activemq---activemq原理分析之消息发送(代码片段)

...消息和非持久化消息的发送策略消息同步发送和异步发送ActiveMQ支持同步、异步两种发送模式将消息发送到broker上。同步发送过程中,发送者发送一条消息会阻塞直到broker反馈一个确认消息,表示消息已经被broker处理。这个机制... 查看详情

activemq生产者发送消息失败:refuseconnect(代码片段)

在生产者发送消息时,出现如下报错:java.net.ConnectException:Connectionrefused:connect atjava.net.DualStackPlainSocketImpl.waitForConnect(NativeMethod)~[na:1.8.0_181] atjava.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)~[na:1.8.0_181] atjava.n... 查看详情

如何避免activemq数据丢失

做消息持久化 借助jdbc,kahadb或leveldb+zookeeper首先将将消息发送设置为持久化发送(mq自带的属性),然后再借助jdbckahadbleveldb+zookeeper等做消息的存储来持久化。思想都是发送者(消息生产者)将消息发送出去后,消息中心首... 查看详情

activemq概述和安装(代码片段)

概述面向消息的中间件(MOM),是指利用高效可靠的消息传递机制与平台无关的数据交流,并基于数据通信来进行分布式系统的集成大致过程是这样的:发送者把消息发送给消息服务器,消息服务器将消息存放在若干队列/主题topi... 查看详情

activemq学习第八篇:messaage(代码片段)

MessaageProperties:??ActiveMQ支持很多消息属性,具体可以参考http://activemq.apache.org/activemq-message-properties.html??常见得一些属性说明:queue得消息默认是持久化得消息得优先级默认是4.消息发送时设置了时间戳。消息的过期时间默认是永... 查看详情

activemq发送消息(代码片段)

ActiveMQ发送消息Java消息服务(JavaMessageService,JMS)是一个Java标准,定义了使用消息代理的通用API。ActiveMQ是一个开源消息代理产品,也是使用JMS进行异步消息传递的最佳选择。下载ActiveMQ:http://activemq.apache.org下载解压后进入相应的bi... 查看详情

activemq(15):messagedispatch的消息游标与异步发送

一、消息游标1.1简介ActiveMQ发送持久消息的典型处理方式是:当消息的消费者准备就绪时,消息发送系统把存储的消息按批次发送给消费者,在发送完一个批次的消息后,指针的标记位置指向下一批次待发送消息的位置,进行后... 查看详情

rabbitmq高级之如何保证消息发送可靠性(代码片段)

1.RabbitMq的发送机制学过RabbitMq的同学们大概都知道了RabbitMq发送机制引入了Exchange(交换机的概念),消息发送方,首先把消息发送到交换机这是第一个步骤,然后交换机在把消息路由到不同的队列中(Queue)这是第二个步骤,在有不同的消... 查看详情