RocketMQ Broker 存储架构:ConsumeQueue、IndexFile结构
2024-05-08 11:24:06 0 举报
RocketMQ Broker 存储架构:ConsumeQueue、IndexFile结构
作者其他创作
大纲/内容
msg size4B
IndexFile头部40B
通过 ConsumeQueue 查找 Commitlog 中的数据
索引中一条数据的格式
Topic1 -> Msg3
keyHash(4B)消息key的哈希值
timeDiff(4B)该消息的存储时间与第一条消息的时间戳的差值
IndexFile
slotValue(4B)(发生hash冲突后保存的上一条IndexItem位置)
Topic2 -> Msg2
Topic1 -> Msg6
javaedge.cn
Commitlog(共17部分)
BodyCrc
ConsumeQueue条目
TotalSize
索引数据列表(最多2000w个)
Commitlog
phyOffset(8B)消息物理偏移量
Topic2 -> Msg5
MagicCode
Properties
保存key在索引数据列表中的位置
commitlog offset8B
哈希槽[0~500W)个 * 4B
Topic1 -> Msg1
Topic1 -> Msg4
tags code8B
...
0 条评论
下一页