ActiveMQ处理失败时的消息重发机制

8人阅读 评论(0) 收藏 举报
分类:

ActiveMQ处理失败时的消息重发机制
1. 处理失败 指的是MessageListener的onMessage方法里抛出RuntimeException。

2. Message头里有两个相关字段:Redelivered默认为false,redeliveryCounter默认为0。

3. 消息先由broker发送给consumer,consumer调用listener,如果处理失败,本地redeliveryCounter++,给broker一个特定应答,broker端的message里redeliveryCounter++,延迟一点时间继续调用,默认1s。超过6次,则给broker另一个特定应答,broker就直接发送消息到DLQ。

4. 如果失败2次,consumer重启,则broker再推过来的消息里,redeliveryCounter=2,本地只能再重试4次即会进入DLQ。

5. 重试的特定应答发送到broker,broker即会在内存将消息的redelivered设置为true,redeliveryCounter++,但是这两个字段都没有持久化,即没有修改存储中的消息记录。所以broker重启时这两个字段会被重置为默认值。

配置文件acknowledge="auto",自动回复接收。

配置文件acknowledge="client",手动回复接收。

查看评论

ActiveMQ 处理失败时的消息重发机制

1. 处理失败 指的是MessageListener的onMessage方法里抛出RuntimeException。 2. Message头里有两个相关字段:Redelivered默认为fals...
  • u010270273
  • u010270273
  • 2017-04-19 09:27:11
  • 3512

ActiveMQ的消息重试机制

消息重发机制: 1. 处理失败 指的是MessageListener的onMessage方法里抛出RuntimeException。 2. Message头里有两个相关字段:Redelivered默认...
  • KimmKing
  • KimmKing
  • 2014-02-12 18:42:55
  • 16849

Spring ActiveMQ 整合(二): 重发机制(消息发送失败后的重新发送)

假如现在我手里有一个很重要的消息的,想要发给一个人,但是很不幸,消息发送失败了。这时候怎么办呢怎么解决这种尴尬的情况,这时候我们可以利用activeMQ的 消息重发机制(RedeliveryPoli...
  • dly1580854879
  • dly1580854879
  • 2017-03-30 16:45:06
  • 9548

ActiveMQ的消息重发机制

本文以ActiveMQ最新的5.10版本为准。        大家知道,JMS规范中,Message消息头接口中有setJMSRedelivered(boolean redelivered)和getJ...
  • manzhizhen
  • manzhizhen
  • 2016-09-21 13:04:27
  • 3439

ActiveMQ的消息重发策略和DLQ处理

ActiveMQ的消息重发策略和DLQ处理,自动丢弃过期消息,将非持久消息(non-persistent messages)放入死信队列...
  • gaolu
  • gaolu
  • 2013-12-09 12:56:39
  • 2445

ActiveMQ中的消息重发时间间隔和重发次数吗?

首先,我们得大概了解下,在哪些情况下,ActiveMQ服务器会将消息重发给消费者,这里为简单起见,假定采用的消息发送模式为队列(即消息发送者和消息接收者)。       1.如果消息接收者在处理...
  • xcw931924821
  • xcw931924821
  • 2016-10-11 16:42:10
  • 3566

Activemq消息确认机制

ActiveMQ消息传送机制以及ACK机制详解     AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,...
  • czp11210
  • czp11210
  • 2015-07-23 15:06:10
  • 39712

ActiveMQ Redelivery Policy(消息重发策略)

官方文档:http://activemq.apache.org/redelivery-policy.html 在事务控制里抛出异常,txManager会进行rollback处理.(在activeMQ...
  • varyall
  • varyall
  • 2015-11-18 15:39:49
  • 2345

springboot整合activemq,应答模式,消息重发机制,消息持久化

准备工作: activemq的消息确认机制就是文档中说的ack机制有: AUTO_ACKNOWLEDGE = 1    自动确认 CLIENT_ACKNOWLEDGE = 2    客户端...
  • zhaoyachao123
  • zhaoyachao123
  • 2017-10-27 14:59:06
  • 1865

spring activeMQ 整合(二): 重发机制(消息发送失败后的重新发送)

之前已经写了一个spring   activemq整合的demo   ,今天继续完善一下这个demo,让功能更强大。 Spring ActiveMQ 整合(一): 一个简单的demo,测试消...
  • romantic_PK
  • romantic_PK
  • 2017-08-02 10:56:51
  • 339
    个人资料
    持之以恒
    等级:
    访问量: 0
    积分: 490
    排名: 0
    文章存档