所属集群名字 附加:如果有多个master,那么每个master配置的名字应该一样,要不然识别不了对方,不知道是一个集群内部的 brokerClusterName=rocketmq-cluster 此处需手动更改
broker名字,注意此处不同的配置文件填写的不一样 附加:按配置文件文件名来匹配 brokerName=broker-a
0 表示Master, > 0 表示slave brokerId=0
此处许手动更改 (此处nameserver跟host配置相匹配,9876为默认rk服务默认端口)nameServer 地址,分号分割 附加:broker启动时会跟nameserver建一个长连接,broker通过长连接才会向nameserver发新建的topic主题,然后java的客户端才能跟nameserver端发起长连接,向nameserver索取topic,找到topic主题之后,判断其所属的broker,建立长连接进行通讯,这是一个至关重要的路由的概念,重点,也是区别于其它版本的一个重要特性 namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876
在发送消息时,自动创建服务器不存在的Topic,默认创建的队列数 defaultTopicQueueNums=4
是否允许Broker 自动创建Topic,建议线下开启,线上关闭 autoCreateTopicEnable=true
是否允许Broker自动创建订阅组,建议线下开启,线上关闭 autoCreateSubscriptionGroup=true
Broker 对外服务的监听端口 listenPort=10911
删除文件时间点,默认是凌晨4点 deleteWhen=04
文件保留时间,默认48小时 fileReservedTime=120
commitLog每个文件的大小默认1G 附加:消息实际存储位置,和ConsumeQueue是mq的核心存储概念,之前搭建2m环境的时候创建在store下面,用于数据存储,consumequeue是一个逻辑的概念,消息过来之后,consumequeue并不是把消息所有保存起来,而是记录一个数据的位置,记录好之后再把消息存到commitlog文件里 mapedFileSizeCommitLog=1073741824
ConsumeQueue每个文件默认存30W条,根据业务情况调整 mapedFileSizeConsumeQueue=300000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
检测物理文件磁盘空间 diskMaxUsedSpaceRatio=88
存储路径 storePathRootDir=/usr/local/rocketmq/store
commitLog存储路径 storePathCommitLog=/usr/local/rocketmq/store/commitlog
消费队列存储路径 storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue
消息索引存储路径 storePathIndex=/usr/local/rocketmq/store/index
checkpoint 文件存储路径 storeCheckpoint=/usr/local/rocketmq/store/checkpoint
abort 文件存储路径 abortFile=/usr/local/rocketmq/store/abort
限制的消息大小
maxMessageSize=65536
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
Broker 的角色
刷盘方式
checkTransactionMessageEnable=false
发消息线程池数量 sendMessageTreadPoolNums=128
拉消息线程池数量 pullMessageTreadPoolNums=128