RocketMQ 5.x的服务端配置涉及两个核心组件:NameServer和Broker,以下是这两个组件的配置文档说明,包括基本的配置项及其作用。
NameServer 配置
NameServer是RocketMQ中负责维护Broker名称和地址信息的轻量级服务器。
配置文件位置
默认的NameServer配置文件位于conf/namesrv.properties
。
主要配置项
1、Dcom.rocketmq.sendMessageWithVIPChannel=false
是否使用VIP通道发送消息,默认为false。
2、Dcom.rocketmq.client.traceLogEnable=false
是否开启客户端轨迹日志,默认为false。
3、Dcom.rocketmq.common.assit.store.useTLS=false
是否使用TLS协议存储数据,默认为false。
4、Dcom.rocketmq.common.assit.store.maxTransferBytesOnMessageInMemory=8192
在内存中传输消息时的最大字节数,超过这个值的消息将被写入临时文件。
5、Dcom.rocketmq.common.assit.store.maxTransferCountOnMessageInMemory=10
在内存中传输消息时的最大条数,超过这个值的消息将被写入临时文件。
6、Dcom.rocketmq.namesrv.authenticationKey=
设置NameServer的身份验证密钥。
7、Dcom.rocketmq.namesrv.listenPort=9876
设置NameServer监听的端口号。
8、Dcom.rocketmq.namesrv.storePathRootDir=/usr/local/rocketmq/nsstore
设置NameServer的数据存储根目录。
9、Dcom.rocketmq.namesrv.storePathCommitLog=/usr/local/rocketmq/nsstore/commitlog
设置NameServer的CommitLog存储路径。
10、Dcom.rocketmq.namesrv.maxCachedNamespacesSize=1024
设置NameServer缓存的最大命名空间数量。
Broker 配置
Broker是RocketMQ中负责存储消息、转发消息的核心服务器。
配置文件位置
默认的Broker配置文件位于conf/broker.conf
。
主要配置项
1、brokerClusterName
指定Broker所属的集群名称。
2、brokerName
指定Broker的名称。
3、listenPort
指定Broker监听客户端连接的端口号。
4、namesrvAddr
指定NameServer的地址列表。
5、storePathRootDir
指定Broker的数据存储根目录。
6、storePathCommitLog
指定CommitLog的存储路径。
7、flushDiskType
设置刷盘策略,可选值为ASYNC_FLUSH(异步刷盘)和SYNC_FLUSH(同步刷盘)。
8、deleteWhen
设置消息删除策略,可选值为0(不自动删除),1(7天后自动删除),2(14天后自动删除),3(30天后自动删除)。
9、fileReservedTime
设置CommitLog文件的保留时间,单位为小时。
10、maxTransferBytesOnMessageInMemory
设置在内存中传输消息时的最大字节数,超过这个值的消息将被写入临时文件。
11、maxTransferCountOnMessageInMemory
设置在内存中传输消息时的最大条数,超过这个值的消息将被写入临时文件。
12、messageMaxBodySize
设置消息体的最大大小,单位为字节。
13、messageIndexMaxLength
设置索引的最大长度,单位为字节。
14、brokerIP1
设置Broker的第一个IP地址。
15、brokerName1
设置Broker的第一个名称。
16、brokerId
设置Broker的唯一ID。
17、filtersrvAddr
设置Filter Server的地址列表。
18、brokerRole
设置Broker的角色,可选值为ASYNC_MASTER(异步主节点),SYNC_MASTER(同步主节点),SLAVE(从节点)。
19、flushIntervalCommitLog
设置CommitLog的刷新间隔,单位为毫秒。
20、cleanResourceInterval
设置清理资源的时间间隔,单位为分钟。
通过以上配置项,你可以根据你的需求和环境来调整NameServer和Broker的行为,记得在修改配置文件后,需要重启对应的服务以使配置生效。