(1) rocketmq的核心概念,比如生产者,消费者,生产者组,消费者组等
https://blog.csdn.net/kobewwf24/article/details/83621682
(1) nameserver的作用
(2) broker如何及何时向nameserver注册
(3) producer,consumer如何通过nameserver与broker产生联系–消息是如何通过topic传输的
(4) 为什么rocketmq使用nameserver而不是Zookeeper
https://blog.csdn.net/kobewwf24/article/details/83622089
(1) producer如何发送消息到队列(默认轮询)
(2) consumer如何消费队列里的消息(平均消费)
(3) rocketmq如何发送顺序消息
https://blog.csdn.net/earthhour/article/details/78323026
(1) producer如何消息重试:失败重试、时间限制重试
(2) consumer如何消息重试,consumer怎么对消息的消费状态做处理,包括成功的的消息和消费失败的消息
https://blog.csdn.net/zhanglianhai555/article/details/77162208
(1) 同步/异步刷盘的方式
(2) broker的集群方式(2m-2s-sync,2m-2s-async,2m-noslave)以及三种Broker集群方式优缺点
(3) Broker配置的一些配置参数
https://blog.csdn.net/jayjjb/article/details/70140667
(1) CommitLog和ConsumeQueue文件结构
(2) consumer如何保证不重复消费的原理
https://www.jianshu.com/p/9c68825d4474
(1) MQ的存储模型
(2) RocketMQ的存储架构(CommitLog和ConsumeQueue的数据结构)
(3) 对比rocketmq和kafka的存储结构差异带来的性能的影响。
(4) rocketmq存储的底层实现(MappedByteBuffer,page cache)
(5) 消息存储主流程(源码实现)
https://blog.csdn.net/mr253727942/article/details/55805876?utm_source=tuicool&utm_medium=referral
(1) 消费完的消息如何处理
(2) 物理消息文件的清除时间
(3) 如何通过代码过滤历史消息(BornTimestamp与QueueOffset)
https://jaskey.github.io/blog/2017/02/16/rocketmq-clean-commitlog/
https://www.jianshu.com/p/453c6e7ff81c