中间件 | RocketMq - [broker 配置]

INDEX

broker.conf

干货见注释

properties 复制代码
### 集群名
brokerClusterName=DefaultCluster

### nameserver
# nameserver 地址
namesrvAddr=192.168.3.76:9876

### broker
# broker名,同名则主从
brokerName=a-m
# broker id,唯一
brokerId=0
# borker 端口
listenPort=10911
# broker 的 ip,可以自动识别,多网卡等场景可以手动指定
#brokerIP1=172.18.14.4
# broker 角色,ASYNC_MASTER / SYNC_MASTER / SLAVE
brokerRole=ASYNC_MASTER
# 刷盘类型,ASYNC_FLUSH / SYNC_FLUSH
flushDiskType=ASYNC_FLUSH

### 开关
# 能否自动创建 topic
autoCreateTopicEnable=true
# 能否自动创建订阅组
autoCreateSubscriptionGroup=true
# 是否接受权限控制,权限相关配置见 ~/conf/plain_acl.yml
aclEnable=true
# 是否允许追踪消息
traceTopicEnable=true

### 存储路径
# 存储根路径
storePathRootDir=/data/rocketmq-4.9.4/store/a-m
# 存储 commit log 的路径,生产者发送的各个 topic 的消息信息,文件名是数字,此数字是此文件第一个字符在所有消息中索引
storePathCommitLog=${storePathRootDir}/commitlog
# 存储 consume queue 的路径,相当于 commit log 的聚簇索引,其下目录结构 ~/topic_name/queue_id/queue文件
# 每个文件 30w 条记录,每条 20字节, 每条记录结构:commitlog 物理偏移量(8B),消息长度(4B),tag hash值(8B)
storePathConsumerQueue=${storePathRootDir}/consumequeue
# 存储消息索引的路径,相当于 commit log 基于 key 的散列索引,文件名即创建时间戳,一个文件记满后会创建新的,因此hash槽是重的
# 每个文件由 3 部分组成,因此文件大小是固定的,
#   头:40B
#   hash 槽:500w * 4B,每个消息靠消息 key 的 hash%500w 计算 hash 槽,里面存对应索引项的偏移量
#   索引项:2000w * 20B,结构为:key hash(4B),commit log偏移量(8B),时间偏移量(4B),下一个索引项指针(4B)
#   hash 冲突时,槽会指向新索引项,并由下一个索引项指针指向原索引项,因此,整个文件其实就是个hashmap,大小固定是为了方便计算偏移
storePathIndex=${storePathRootDir}/index
# 存储检查点的路径,commitLog、ConsumeQueue、Index文件的刷盘时间点,broker异常结束恢复后,会按此数据恢复
storeCheckpoint=${storePathRootDir}/checkpoint

### 磁盘清理
# 磁盘文件空间充足情况下,默认每天什么时候执行删除过期文件
deleteWhen=04
# CommitLog、ConsumeQueue 文件以偏移量命名。这些文件若超过了此参数配置的时间(单位小时)则认为是过期文件,随时可以删除
fileReservedTime=48
相关推荐
cqsztech16 小时前
基于UOS20 东方通tongweb8 安装简约步骤
中间件
自燃人~17 小时前
RocketMQ 架构与设计原理
架构·rocketmq
yuanmenghao18 小时前
自动驾驶中间件iceoryx - 同步与通知机制(二)
开发语言·单片机·中间件·自动驾驶·信息与通信
云雾J视界19 小时前
从Boost的设计哲学到工业实践:解锁下一代AI中间件架构的密码
c++·人工智能·中间件·架构·stackoverflow·boost
yuanmenghao20 小时前
自动驾驶中间件iceoryx - 同步与通知机制(一)
开发语言·网络·驱动开发·中间件·自动驾驶
optimistic_chen2 天前
【Redis 系列】持久化特性
linux·数据库·redis·分布式·中间件·持久化
利刃大大2 天前
【RabbitMQ】安装详解 && 什么是MQ && RabbitMQ介绍
分布式·中间件·消息队列·rabbitmq·mq
星辰_mya3 天前
rocketMQ之ConsumeQueue
rocketmq
用户0203388613143 天前
RocketMQ知识点梳理
rocketmq
schinber3 天前
MinIO生成环境如何做到负载均衡
中间件·minio