RocketMq 官網(wǎng)
kafka 官網(wǎng)
一、Rocketmq 文件

消息存儲(chǔ)結(jié)構(gòu).png
- 存儲(chǔ)文件
數(shù)據(jù)、索引相分離的存儲(chǔ)結(jié)構(gòu)- CommitLog
- 消息主體
- 元數(shù)據(jù)
- ConsumeQueue
- $HOME/store/consumequeue/{topic}/{queueId}/{fileName}
基于topic的commitlog索引文件 - 每一個(gè)條目共20個(gè)字節(jié),分別為8字節(jié)的commitlog物理偏移量、4字節(jié)的消息長(zhǎng)度、8字節(jié)tag hashcode
- $HOME/store/consumequeue/{topic}/{queueId}/{fileName}
- IndexFile
- IndexFile的底層存儲(chǔ)設(shè)計(jì)為在文件系統(tǒng)中實(shí)現(xiàn)HashMap結(jié)構(gòu)
提供了一種可以通過(guò)key或時(shí)間區(qū)間來(lái)查詢消息的方法
- IndexFile的底層存儲(chǔ)設(shè)計(jì)為在文件系統(tǒng)中實(shí)現(xiàn)HashMap結(jié)構(gòu)
- CommitLog
二、kafka 文件
Kafka的partition對(duì)應(yīng)于RocketMQ的queue

kafka消息存儲(chǔ).png