RocketMQ 和 Kafka 有什么区别?

[复制链接]
发表于 2025-11-9 07:42:57 | 显示全部楼层 |阅读模式
目次
RocketMQ 是什么?
RocketMQ 和 Kafka 的区别
在架构上做减法
简化和谐治点
简化分区
Kafka 的底层存储
RocketMQ 的底层存储
简化备份模子
功能上做加法
消息过滤
支持变乱
到场延时队列
到场死信队列
消息回溯
总结

泉源:口试官:RocketMQ 和 Kafka 有什么区别?
<hr>
作为一个步调员,假设你有 A、B 两个服务,A 服务发出消息后,不想让 B 服务立马处置惩罚到。而是要过半小时才让 B 服务处置惩罚到,该怎么实现?
这类延长处置惩罚消息的场景非经常见,举个例子,好比我每天早上到公司后都会点个外卖,我渴望外卖能在中午送过来,而不是立马送过来,这就必要将外卖消息颠末延时后,再投递到商家侧。


那么标题就来了,有没有优雅的办理方案?固然有,没有什么是加一层中央层不能办理的,如果有,那就再加一层。这次我们要加的中央层是消息队列 RocketMQ


RocketMQ 是什么?

RocketMQ 是阿里自研的国产消息队列,现在已经是 Apache 的顶级项目。和其他消息队列一样,它继承来自生产者的消息,将消息分类,每一类是一个 topic斲丧者根据必要订阅 topic,获取内里的消息。


是不是很像我们上篇文章里提到的消息队 Kafka,那么标题很天然就来了,既然都是消息队列,那它们之间有什么区别呢
RocketMQ 和 Kafka 的区别

RocketMQ 的架构实在参考了 Kafka 的筹划头脑,同时又在 Kafka 的底子上做了一些调解。


这些调解,用一句话总结就是,"和 Kafka 相比,RocketMQ 在架构上做了减法,在功能上做了加法"。我们来看下这句话的寄义。
在架构上做减法

我们来简朴回首下消息队列 Kafka 的架构。kakfa 也是通过多个 topic 对消息举行分类。



      
  •   为了提升单个 topic 的并发性能,将单个 topic 拆为多个 partition。




      
  • 为了提升体系扩展性,将多个 partition 分别摆设在差别 broker 上。
      
  • 为了提升体系的可用性,为 partition 加了多个副本。
      
  • 为了和谐和管理 Kafka 集群的数据信息,引入Zookeeper作为和谐治点。



Kafka 已经黑白常强的消息队列了,我们来看下 RocketMQ 在 Kafka 架构的底子上,还能玩出什么格式来。
简化和谐治点

Zookeeper 在

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表