rocketmq-mappedfile-detail


文档摘要

该文所涉及的 RocketMQ 源码版本为 4.9.3。 RocketMQ MappedFile 内存映射文件详解 1、MappedFile 初始化 初始化 ,因为 commitLog 文件夹下的文件都是以偏移量为命名的,所以转成了 long 类型 确认文件目录是否存在,不存在则创建 通过 设置 fileChannel 使用 NIO 内存映射将文件映射到内存中 2、MappedFile 提交 如果 wroteBuffer 为空,直接返回 wrotePosition 判断是否执行 commit 操作: 如果文件已满,返回 true commitLeastPages 为本次提交的最小页数,如果 commitLeastPages 大于 0,计算当前写指针( )与上一次提交的指针 的差值 除以页


发布者: 作者: 转发
评论区 (0)
U