简单梳理Topic,MessageQueue,QueueData,broker之间的关系

主要围绕几个概念进行展开

topic队列

MessageQueue

QueueData

broker


topic是什么

Producer 向一些队列轮流发送消息,队列集合称为Topic (参照refer)

topic和队列的关系

topic和队列的关系.png

topic和QueueData的关系

QueueData描述了一个topic对应的队列信息,包括读写队列数量,本身并没有队列

topic和queueData的关系  

topic和broker的关系

topic通过QueueData的brokerName属性,关联到了broker,上图可以看出来

topic-A会在broker-a和broker-b上各有8个读写队列等

队列和QueueData的关系

QueueData描述了一个topic对应的队列MessageQueue信息,包括读写队列数量,本身并没有队列

一个QueueData相当于描述了多个MessageQueue,取决于QueueData属性readQueueNums,writeQueueNums

队列和broker关系

队列MessageQueue记录了brokerName

QueueData和broker关系

QueueData也记录了brokerName

存疑

QueueData描述的队列,具体是哪里创建的

目前认为是MQClientInstance#topicRouteData2TopicSubscribeInfo

看完源码这里再确认

refer

《RocketMq开发手册3.2.4》

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容