broker 拉取消息的流程
2021-09-01 本文已影响0人
Britney_z

首先判断offset是否正确,因为consumerqueue下有可能多个文件,所以我们根据offset寻找具体的文件


根据offset查询到具体的mappedFile

从offset到maxoffset的大小,为后面循环取消息 跳出循环做判断。

同时满足小于 剩余size 和获取的消息数

消息tag过滤 ,从comitlog获取消息

将不是该tag的堆外内存释放,将result加入数组