layout: post title: "有关 RocketMQ 的文章都在这里了,请查阅!" categories: RocketMQ tags:
1、很多初学 RocketMQ 的读者向我提问关于 RocketMQ 消费模式的问题, RocketMQ 的消费模式有集群模式和广播模式,这篇文章可以回答这类问题:
2、Kafka 后续的版本有去除 zk 注册中心依赖的的发展趋势,看看 RocketMQ 是怎么做到的:
3、RocketMQ 的 topic 创建有一些细节需要注意的地方,稍微不注意就会造成性能影响:
4、RocketMQ 的 topic 创建时,你有没有考虑过队列的分配问题?你是如何考虑主题队列数量的?我是这么思考这些问题的:
关于RocketMQ Topic的创建机制,我还有一些细节上的思考
5、向 Broker 发送消息时,难免会碰到 Broker 不可用的时候,可以了解下 RocketMQ 是如何处理这个问题的:
6、如果同一个消费组下,消费者之间的订阅关系不一致,会导致订阅关系不存在的错误发生,我从源码分析得出为什么会产生这个问题的原因:
7、RocketMQ 队列是基于主从模式, Kafka 的分区副本是基于 leader-follower 模式:
8、Broker 启动过程中的过程中都做了哪些事情?
9、从源码的角度深度剖析了主从同步的实现原理,这部分内容也是 RockeMQ 核心机制之一:
10、RocketMQ 的主从读写分离机制与 Mysql 有什么区别?这篇文章可以给予你答案:
11、消费进度是如何在主从节点直接同步的?集群模式和广播模式都有所不同:
12、消息消费前,需要从 Broker 节点拉取消息,那么拉取消息会有 Push 模式和 Pull 模式,RocketMQ 的消息拉取机制是如何实现的?这是 RocketMQ 很重要的知识点之一:
13、异常的意思是从节点不可用,那么为什么会导致从节点不可用?这里从节点不一定挂了,而是因为从节点的消费偏移量落后主节点太多导致的,以下这篇文章详细地解读了产生这个异常报错的原因:
RocketMQ 同步复制 SLAVE_NOT_AVAILABLE 异常源码分析
14、新手入门必备:
15、并发消费的时候,一次从 一个队列拉 32 条消息,这 32 条消息会提交到线程池中处理,如果偏移量 m5 比 m4 先执行完成,消息消费后,提交的消费进度是哪个?是提交消息 m5 的偏移量?
16、无论是 RocketMQ 还是 Kafka,都不能严格地保证消息消费的顺序性,在允许一定的范围内,RocketMQ 自身已有顺序消费的逻辑实现:
Kafka/RocketMQ 多线程消费时如何保证消费顺序?
17、Kafka 和 RocketMQ 的位移提交对比,由于 Kafka 不支持消息重试,因此在消费时需要客户端保证消息消费的过程是成功的,这也是我在过往中遇比较多读者问的问题: