首页 > 其他分享 >【RocketMQ】

【RocketMQ】

时间:2023-01-09 17:58:21浏览次数:24  
标签:Broker 重试 死信 消息 Consumer RocketMQ

RocketMQ 主要包括 Producer、Consumer 和 Broker,同时 Name Server 进行集群注册管理和保存元数据。

 

问题:怎么做能确保 RocketMQ 不丢失消息

https://zhuanlan.zhihu.com/p/596988137  4 张图,9 个维度告诉你怎么做能确保 RocketMQ 不丢失消息

Producer 发送消息

  根据返回的状态码,可以做消息重试,这里设置的重试次数是 3。
Broker 保存消息

  多副本和高可用
Consumer 消费消息

  消费成功,返回 CONSUME_SUCCESS,

  Consumer 消费失败,这里有 3 种情况:
    返回 RECONSUME_LATER
    返回 null
    抛出异常
  Broker 收到这个响应后,会把这条消息放入重试队列,重新发送给 Consumer。

  注意:
    Broker 默认最多重试 16 次,如果重试 16 次都失败,就把这条消息放入死信队列,Consumer 可以订阅死信队列进行消费。
    重试只有在集群模式(MessageModel.CLUSTERING)下生效,在广播模式(MessageModel.BROADCASTING)下是不生效的。
    Consumer端一定要做好幂等处理。

Broker 主从切换

 

事务消息:

死信队列:

 

标签:Broker,重试,死信,消息,Consumer,RocketMQ
From: https://www.cnblogs.com/clarino/p/17037750.html

相关文章

  • docker部署rocketmq
     dockerpullfoxiswho/rocketmq:server-4.7.0 (拉取镜像)dockerpullfoxiswho/rocketmq:broker-4.7.0(拉取镜像) mkdir/opt/rocketmq-server (创建mq使用目录)mkd......
  • RocketMQ 多语言 SDK 开源贡献召集令
    作者:艾阳坤目前ApacheRocketMQ5.0SDK[1]正在社区开源,开发与迭代也在火热进行中,欢迎广大社区的朋友们能够参与其中。我们欢迎任何形式的贡献,包括但不限于新feature......
  • RocketMQ存储篇四:刷盘
    概览RocketMQ主从同步指的是消息发送到master的内存中,并且等到同步到slaver的内存才返回;刷盘则是将内存中的消息写入磁盘,同样分为同步刷盘和异步刷盘。同步刷盘指一条......
  • RocketMQ存储篇三:追加消息
    第一篇介绍了存储的概览,定位到消息追加消息处细看一下获取mappedFile——>追加消息——>处理结果@DefaultMappedFile#appendMsgInner()publicAppendMessageResult......
  • Apache RocketMQ 斩获 InfoQ 2022 年度十大开源新锐项目
    以“深入数字经济·洞见技术价值”为主题的【InfoQ2022中国技术力量年终榜单】正式公布获奖名单。其中,ApacheRocketMQ以其卓越的易用性、社区活跃性、成熟度、产品优越性......
  • Apache RocketMQ 斩获 InfoQ 2022 年度十大开源新锐项目
    以“深入数字经济·洞见技术价值”为主题的【InfoQ2022中国技术力量年终榜单】正式公布获奖名单。其中,ApacheRocketMQ以其卓越的易用性、社区活跃性、成熟度、产品优越......
  • 一文详解RocketMQ的存储模型
    摘要:RocketMQ优异的性能表现,必然绕不开其优秀的存储模型。本文分享自华为云社区《终于弄明白了RocketMQ的存储模型》,作者:勇哥java实战分享。RocketMQ优异的性能表现,......
  • RocketMQ存储篇二:相关概念介绍(MappedFile)
    这篇文章介绍在RocketMQ存储中使用到的一些概念,包括和零拷贝相关的MappedFile看下MappedFile的类图结构,DefaultMappedFile实现了MappedFile接口,同时继承了ReferenceReso......
  • RocketMQ 5.0 多语言客户端的设计与实现
    本文作者:古崟佑,阿里云中间件开发。 RocketMQ5.0版本拥有非常多新特性,比如存储计算分离、batch能力的提升等,它是具有里程碑意义的版本。提到新版本,我们往往会首先......
  • RocketMQ 5.0 多语言客户端的设计与实现
    本文作者:古崟佑,阿里云中间件开发。RocketMQ5.0版本拥有非常多新特性,比如存储计算分离、batch能力的提升等,它是具有里程碑意义的版本。提到新版本,我们往往会首先想到服务......