您的位置:首页 > 其它

rocketmq consumeLog

2016-12-08 15:03 155 查看
// CommitLog每个文件大小 1G
    private int mapedFileSizeCommitLog = 1024 * 1024 * 1024;

// CommitLog存储目录

    private String storePathCommitLog = System.getProperty("user.home") + File.separator + "store"

            + File.separator + "commitlog";

MapedFile 内存映射文件

// 映射的文件名

    private final String fileName;

文件名就是fileFromOffset起始偏移量

// 映射的起始偏移量

    private final long fileFromOffset;

// 映射的文件大小,定长

    private final int fileSize;

对于CommitLog,大小就是mapedFileSizeCommitLog=1G

// 当前写到什么位置

    private final AtomicInteger wrotePostion = new AtomicInteger(0);

// Flush到什么位置

    private final AtomicInteger committedPosition = new AtomicInteger(0);

在添加ConsumeLog的时候 会返回一个AppendMessageResult,

msgId 

16个字节 前8个字节是ip+port 后8个字节是 消息对应的物理分区 然后转成16进制,每一个字节转成2个字符 不足后面加一个零

比如 /192.168.0.144:10911 + 转成  C0A800904C6C00B4AAC22BC19BEE0000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: