Skip to content

RocketMQ Configuration

rocketmq config

NameServer

rocketmqHome

RocketMQ主目录,默认用户主目录

示例:


namesrvAddr

NameServer地址

示例:

namesrvAddr=192.168.0.10:9876, 192.168.0.11

kvConfigpath

kv配置文件路径,包含顺序消息主题的配置信息

示例:


configStorePath

NameServer配置文件路径,建议使用-c指定NameServer配置文件路径

示例:


clusterTest

是否支持集群测试,默认为false

orderMessageEnable

是否支持顺序消息,默认为false

示例:


Broker

brokerName

示例:

brokerName=broker-a
# brokerName=broker-a-s
# brokerName=broker-b
# brokerName=broker-b-s

accessMessageInMemorymaxRatio

访问消息在内存中的比率

示例:


adminBrokerThreadPoolNums

服务端处理控制台管理命令线程池线程数量

示例:


autoCreateSubscriptionGroup

是否自动创建消费组

示例:

autoCreateSubscriptionGroup=false

autoCreateTopicEnable

是否自动创建主题

示例:

autoCreateTopicEnable=false

bitMapLengthConsumeQueueExt

ConsumeQueue扩展过滤bitmap大小

示例:


brokerClusterName

Broker集群名称

示例:

brokerClusterName=rocketmq-cluster

brokerFastFailureEnable

是否支持broker快速失败 如果为true表示会立即清除发送消息线程池,消息拉取线程池中排队任务 ,直接返回系统错误

示例:


brokerId

brokerID 0表示主节点 大于0表示从节点

示例:

brokerId=0

# master brokerId=0
# slave brokerId=1

listenPort

listenPort=10911

haListenPort

haListenPort=10912

brokerIP1

Broker服务地址

示例:


brokerIP2

BrokerHAIP地址,供slave同步消息的地址

示例:


brokerPermission

Broker权限 默认为6表示可读可写

示例:


brokerRole

broker角色,分为 ASYNC_MASTER SYNC_MASTER, SLAVE

选项:

  • ASYNC_MASTER
  • SYNC_MASTER
  • SLAVE

示例:

brokerRole=SYNC_MASTER 

brokerTopicEnable

broker名称是否可以用做主体使用

示例:


channelNotActiveInterval

示例:


checkCRCOnRecover

文件恢复时是否校验CRC

示例:


cleanFileForciblyEnable

是否支持强行删除过期文件

示例:


cleanResourceInterval

清除过期文件线程调度频率

示例:


clientAsyncSemaphoreValue

客户端对invokeAsyncImpl方法的调用频率

示例:


clientCallbackExecutorThreads

客户端执行回调线程数

示例:


clientChannelMaxIdleTimeSeconds

客户端每个channel最大等待时间

示例:


clientCloseSocketIfTimeout

客户端关闭socket是否需要等待

示例:


clientManagerThreadPoolQueueCapacity

客户端管理线程池任务队列初始大小

示例:


clientManageThreadPoolNums

服务端处理客户端管理(心跳 注册 取消注册线程数量)

示例:


clientOnewaySemaphoreValue

客户端对invokeOnewayImpl方法的调用控制

示例:


clientPooledByteBufAllocatorEnable

客户端池化内存是否开启

示例:


clientSocketRcvBufSize

客户端socket接收缓冲区大小

示例:


clientSocketSndBufSize

客户端socket发送缓冲区大小

示例:


clientWorkerThreads

worker线程数

示例:


clusterTopicEnable

集群名称是否可用在主题使用

示例:


commercialBaseCount

示例:


commercialBigCount

示例:


commercialEnable

示例:


commercialTimerCount

示例:


commitCommitLogLeastPages

一次提交至少需要脏页的数量,默认4页,针对 commitlog文件

示例:


commitCommitLogThoroughInterval

Commitlog两次提交的最大间隔,如果超过该间隔,将忽略commitCommitLogLeastPages直接提交

示例:


commitIntervalCommitLog

commitlog提交频率

示例:


compressedRegister

是否开启消息压缩

示例:


connectTimeoutMillis

链接超时时间

示例:


consumerFallbehindThreshold

消息消费堆积阈值默认16GB在disableConsumeifConsumeIfConsumerReadSlowly为true时生效

示例:


consumerManagerThreadPoolQueueCapacity

消费管理线程池任务队列大小

示例:


consumerManageThreadPoolNums

服务端处理消费管理 获取消费者列表 更新消费者进度查询消费进度等

示例:


debugLockEnable

是否支持 PutMessage Lock锁打印信息

示例:


defaultQueryMaxNum

查询消息默认返回条数,默认为32

示例:


defaultTopicQueueNums

主题在一个broker上创建队列数量

示例:

defaultTopicQueueNums=8

deleteCommitLogFilesInterval

删除commitlog文件的时间间隔,删除一个文件后等一下再删除一个文件

示例:


deleteConsumeQueueFilesInterval

删除consumequeue文件时间间隔

示例:


deleteWhen

磁盘文件空间充足情况下,默认每天什么时候执行删除过期文件,默认04表示凌晨4点

示例:

deleteWhen=04

# Default 04

destroyMapedFileIntervalForcibly

销毁MappedFile被拒绝的最大存活时间,默认120s。清除过期文件线程在初次销毁mappedfile时,如果该文件被其他线程引用,引用次数大于0.则设置MappedFile的可用状态为false,并设置第一次删除时间,下一次清理任务到达时,如果系统时间大于初次删除时间加上本参数,则将ref次数一次减1000,直到引用次数小于0,则释放物理资源

示例:

destroyMapedFileIntervalForcibly=12000

disableConsumeIfConsumerReadSlowly

如果消费组消息消费堆积是否禁用该消费组继续消费消息

示例:


diskFallRecorded

是否统计磁盘的使用情况,默认为true

示例:


diskMaxUsedSpaceRatio

commitlog目录所在分区的最大使用比例,如果commitlog目录所在的分区使用比例大于该值,则触发过期文件删除

示例:

diskMaxUsedSpaceRatio=75

duplicationEnable

是否允许重复复制,默认为 false

示例:


enableCalcFilterBitMap

是否开启比特位映射

示例:


enableConsumeQueueExt

是否启用ConsumeQueue扩展属性

示例:


enablePropertyFilter

是否支持根据属性过滤 如果使用基于标准的sql92模式过滤消息则改参数必须设置为true

示例:


endTransactionPoolQueueCapacity

处理提交和回滚消息线程池线程队列大小

示例:


endTransactionThreadPoolNums

处理提交和回滚消息线程池

示例:


expectConsumerNumUseFilter

布隆过滤器参数

示例:


fastFailIfNoBufferInStorePool

从 transientStorepool中获取 ByteBuffer是否支持快速失败

示例:


fetchNamesrvAddrByAddressServer

是否支持从服务器获取nameServer

示例:


fileReservedTime

文件保留时间,默认72小时,表示非当前写文件最后一次更新时间加上filereservedtime小与当前时间,该文件将被清理

示例:

fileReservedTime=72 # Default 72

filterDataCleanTimeSpan

清除过滤数据的时间间隔

示例:


filterServerNums

broker服务器过滤服务器数量

示例:


filterSupportRetry

消息过滤是否支持重试

示例:


flushCommitLogLeastPages

一次刷盘至少需要脏页的数量,针对commitlog文件

示例:


flushCommitLogTimed

表示await方法等待FlushIntervalCommitlog,如果为true表示使用Thread.sleep方法等待

示例:


flushConsumeQueueLeastPages

一次刷盘至少需要脏页的数量,默认2页,针对 Consume文件

示例:


flushConsumeQueueThoroughInterval

Consume两次刷盘的最大间隔,如果超过该间隔,将忽略

示例:


flushConsumerOffsetHistoryInterval

fushConsumeQueueLeastPages直接刷盘

示例:


flushConsumerOffsetInterval

持久化消息消费进度 consumerOffse.json文件的频率ms

示例:


flushDelayOffsetInterval

延迟队列拉取进度刷盘间隔。默认10s

示例:


flushDiskType

刷盘方式,默认为 ASYNC_FLUSH(异步刷盘),可选值SYNC_FLUSH(同步刷盘)

选项

  • ASYNC_FLUSH 默认异步刷盘
  • SYNC_FLUSH 同步刷盘

示例:

flushDiskType=ASYNC_FLUSH

flushIntervalCommitLog

commitlog刷盘频率

示例:


flushIntervalConsumeQueue

consumuQueue文件刷盘频率

示例:


flushLeastPagesWhenWarmMapedFile

用字节0填充整个文件的,每多少页刷盘一次。默认4096页,异步刷盘模式生效

示例:


storePathRootDir

storePathRootDir=/home/parallels/rocketmq/master1

storePathCommitLog

storePathCommitLog=/home/parallels/rocketmq/master1/commitlog

storePathConsumerQueue

storePathConsumerQueue=/home/parallels/rocketmq/master1/consumequeue

storePathIndex

storePathIndex=/home/parallels/rocketmq/master1/index

storeCheckpoint

storeCheckpoint=/home/parallels/rocketmq/master1/checkpoint

abortFile

abortFile=/home/parallels/rocketmq/master1/abort