RocketMQ 参数详解

摘要:
NameServer配置属性参数名称参数类型描述默认参数(时间单位为毫秒,数据单位为字节)RocketmqHomeStringRockerMQ主目录,默认用户主目录namesrvAddrStringNameServer地址kvConfigPathStringkv配置文件路径,包括顺序消息主题configStorePathStringNameServer配置文件路径的配置信息,建议使用-c

   

NameServer配置属性
参数名参数类型描述默认参数(时间为单位ms,数据单位为byte)
rocketmqHomeStringRockerMQ主目录,默认用户主目录 
namesrvAddrStringNameServer地址 
kvConfigPathStringkv配置文件路径,包含顺序消息主题的配置信息 
configStorePathStringNameServer配置文件路径,建议使用-c指定NameServer配置文件路径 
clusterTestboolean是否开启集群测试,默认为false 
orderMessageEnableboolean是否支持顺序消息,默认为false 
NameServer、Broker、filter网络配置属性
accessMessageInMemoryMaxRatioint访问消息在内存中比率,默认为4040
adminBrokerThreadPoolNumsint服务端处理控制台管理命令线程池线程数量16
autoCreateSubscriptionGroupboolean是否自动创建消费组true
autoCreateTopicEnableboolean是否自动创建主题true
bitMapLengthConsumeQueueExtintConsumeQueue扩展过滤bitmap大小112
brokerClusterNameStringBroker集群名称TestCluster
brokerFastFailureEnableboolean是否支持broker快速失败 如果为true表示会立即清除发送消息线程池,消息拉取线程池中排队任务 ,直接返回系统错误true
brokerIdintbrokerID 0表示主节点 大于0表示从节点0
brokerIP1StringBroker服务地址 
brokerIP2StringBrokerHAIP地址,供slave同步消息的地址 
brokerNameStringBroker服务器名称morning服务器hostnamebroker-a
brokerPermissionintBroker权限 默认为6表示可读可写6
brokerRoleenumbroker角色,分为 ASYNC_MASTER SYNC_MASTER, SLAVEASYNC_MASTER
brokerTopicEnablebooleanbroker名称是否可以用做主体使用true
channelNotActiveIntervallong 60000
checkCRCOnRecoverboolean文件恢复时是否校验CRCtrue
cleanFileForciblyEnableboolean是否支持强行删除过期文件true
cleanResourceIntervalint清除过期文件线程调度频率10000
clientAsyncSemaphoreValueint 65535
clientCallbackExecutorThreadsint 8
clientChannelMaxIdleTimeSecondsint 120
clientCloseSocketIfTimeoutboolean false
clientManagerThreadPoolQueueCapacityint客户端管理线程池任务队列初始大小1000000
clientManageThreadPoolNumsint服务端处理客户端管理(心跳 注册 取消注册线程数量)32
clientOnewaySemaphoreValueint 65535
clientPooledByteBufAllocatorEnableboolean false
clientSocketRcvBufSizelong客户端socket接收缓冲区大小131072
clientSocketSndBufSizelong客户端socket发送缓冲区大小131072
clientWorkerThreadsint 4
clusterTopicEnableboolean集群名称是否可用在主题使用true
commercialBaseCountint 1
commercialBigCountint 1
commercialEnableboolean true
commercialTimerCountint 1
commercialTransCountint 1
commitCommitLogLeastPagesint一次提交至少需要脏页的数量,默认4页,针对 commitlog文件4
commitCommitLogThoroughIntervalintCommitlog两次提交的最大间隔,如果超过该间隔,将忽略commitCommitLogLeastPages直接提交200
commitIntervalCommitLogintcommitlog提交频率200
compressedRegisterboolean false
connectTimeoutMillislong链接超时时间3000
consumerFallbehindThresholdlong消息消费堆积阈值默认16GB在disableConsumeifConsumeIfConsumerReadSlowly为true时生效17179869184
consumerManagerThreadPoolQueueCapacityint消费管理线程池任务队列大小1000000
consumerManageThreadPoolNumsint服务端处理消费管理 获取消费者列表 更新消费者进度查询消费进度等 32
debugLockEnableboolean是否支持 PutMessage Lock锁打印信息false
defaultQueryMaxNumint查询消息默认返回条数,默认为3232
defaultTopicQueueNumsint主体在一个broker上创建队列数量8
deleteCommitLogFilesIntervalint删除commitlog文件的时间间隔,删除一个文件后等一下再删除一个文件100
deleteConsumeQueueFilesIntervalint删除consumequeue文件时间间隔100
deleteWhenString磁盘文件空间充足情况下,默认每天什么时候执行删除过期文件,默认04表示凌晨4点04
destroyMapedFileIntervalForciblyint销毁MappedFile被拒绝的最大存活时间,默认120s。清除过期文件线程在初次销毁mappedfile时,如果该文件被其他线程引用,引用次数大于0.则设置MappedFile的可用状态为false,并设置第一次删除时间,下一次清理任务到达时,如果系统时间大于初次删除时间加上本参数,则将ref次数一次减1000,知道引用次数小于0,则释放物理资源120000
disableConsumeIfConsumerReadSlowlyboolean如果消费组消息消费堆积是否禁用该消费组继续消费消息false
diskFallRecordedboolean是否统计磁盘的使用情况,默认为truetrue
diskMaxUsedSpaceRatiointcommitlog目录所在分区的最大使用比例,如果commitlog目录所在的分区使用比例大于该值,则触发过期文件删除75
duplicationEnableboolean是否允许重复复制,默认为 falsefalse
enableCalcFilterBitMapboolean是否开启比特位映射,这个属性不太明白false
enableConsumeQueueExtboolean是否启用ConsumeQueue扩展属性false
enablePropertyFilterboolean是否支持根据属性过滤 如果使用基于标准的sql92模式过滤消息则改参数必须设置为truefalse
endTransactionPoolQueueCapacityint处理提交和回滚消息线程池线程队列大小100000
endTransactionThreadPoolNumsint处理提交和回滚消息线程池24
expectConsumerNumUseFilterboolean布隆过滤器参数32
fastFailIfNoBufferInStorePoolboolean从 transientStorepool中获取 ByteBuffer是否支持快速失败false
fetchNamesrvAddrByAddressServerboolean是否支持从服务器获取nameServerfalse
fileReservedTimeString文件保留时间,默认72小时,表示非当前写文件最后一次更新时间加上filereservedtime小与当前时间,该文件将被清理120
filterDataCleanTimeSpanlong清除过滤数据的时间间隔86400000
filterServerNumsintbroker服务器过滤服务器数量0
filterSupportRetryboolean消息过滤是否支持重试false
flushCommitLogLeastPagesint一次刷盘至少需要脏页的数量,针对commitlog文件4
flushCommitLogThoroughIntervalintcommitlog两次刷盘的最大间隔,如果超过该间隔,将fushCommitLogLeastPages要求直接执行刷盘操作10000
flushCommitLogTimedboolean表示await方法等待FlushIntervalCommitlog,如果为true表示使用Thread.sleep方法等待false
flushConsumeQueueLeastPagesint一次刷盘至少需要脏页的数量,默认2页,针对 Consume文件2
flushConsumeQueueThoroughIntervalintConsume两次刷盘的最大间隔,如果超过该间隔,将忽略60000
flushConsumerOffsetHistoryIntervalintfushConsumeQueueLeastPages直接刷盘60000
flushConsumerOffsetIntervalint持久化消息消费进度 consumerOffse.json文件的频率ms5000
flushDelayOffsetIntervallong延迟队列拉取进度刷盘间隔。默认10s10000
flushDiskTypeenum刷盘方式,默认为 ASYNC_FLUSH(异步刷盘),可选值SYNC_FLUSH(同步刷盘)ASYNC_FLUSH
flushIntervalCommitLogintcommitlog刷盘频率500
flushIntervalConsumeQueueintconsumuQueue文件刷盘频率1000
flushLeastPagesWhenWarmMapedFileint用字节0填充整个文件的,每多少页刷盘一次。默认4096页,异步刷盘模式生效4096
forceRegisterboolean是否强制注册true
haHousekeepingIntervalintMaster与save长连接空闲时间,超过该时间将关闭连接20000
haListenPortintMaster监听端口,从服务器连接该端口,默认为1091210912
haMasterAddressStringMaster服务器IP地址与端口号 
haSendHeartbeatIntervalintMaster与Slave心跳包发送间隔5000
haSlaveFallbehindMaxint允许从服务器落户的最大偏移字节数,默认为256M。超过该值则表示该Slave不可用268435456
haTransferBatchSizeint一次HA主从同步传输的最大字节长度,默认为32K32768
heartbeatThreadPoolNumsint心跳线程池线程数8
heartbeatThreadPoolQueueCapacityint心跳线程队列数量50000
highSpeedModeboolean当前版本未使用false
listenPortint服务端监听端口10911
longPollingEnableboolean是否开启长轮训true
mapedFileSizeCommitLogint单个conmmitlog文件大小默认1GB1073741824
mapedFileSizeConsumeQueueint单个consumequeue文件大小默认30W*20表示单个Consumequeue文件中存储30W个ConsumeQueue条目6000000
mappedFileSizeConsumeQueueExtintConsumeQueue扩展文件大小默认48MB50331648
maxDelayTimeint当前版本未使用40
maxErrorRateOfBloomFilterint布隆过滤器参数20
maxHashSlotNumint单个索引文件hash槽的个数,默认为五百万5000000
maxIndexNumint单个索引文件索引条目的个数,默认为两千万20000000
maxMessageSizeint默认允许的最大消息体默认4M4194304
maxMsgsNumBatchint一次查询消息最大返回消息条数,默认64条64
maxTransferBytesOnMessageInDisk 一次服务消息端消息拉取,消息在磁盘中传输允许的最大字节65536
maxTransferBytesOnMessageInMemoryint一次服务端消息拉取,消息在内存中传输允许的最大传输字节数默认256kb262144
maxTransferCountOnMessageInDiskint一次消息服务端消息拉取,消息在磁盘中传输允许的最大条数,默认为8条8
maxTransferCountOnMessageInMemoryint一次服务消息拉取,消息在内存中传输运行的最大消息条数,默认为32条32
messageDelayLevelString延迟队列等级(s=秒,m=分,h=小时)1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h
messageIndexEnableboolean是否支持消息索引文件true
messageIndexSafeboolean消息索引是否安全,默认为 false,文件恢复时选择文件检测点(commitlog.consumeque)的最小的与文件最后更新对比,如果为true,文件恢复时选择文件检测点保存的索引更新时间作为对比false
messageStorePlugInString消息存储插件地址默认为空字符串 
namesrvAddrStringnameServer地址 
notifyConsumerIdsChangedEnable 消费者数量变化后是否立即通知RebalenceService线程,以便马上进行重新负载true
offsetCheckInSlaveboolean从服务器是否坚持 offset检测false
osPageCacheBusyTimeOutMillslongputMessage锁占用超过该时间,表示 PageCache忙1000
pullMessageThreadPoolNumsint服务端处理消息拉取线程池线程数量 默认为16加上当前操作系统CPU核数的两倍32
pullThreadPoolQueueCapacityint消息拉去线程池任务队列初始大小100000
putMsgIndexHightWaterint当前版本未使用600000
queryMessageThreadPoolNumsint服务端处理查询消息线程池数量默认为8加上当前操作系统CPU核数的两倍16
queryThreadPoolQueueCapacityint查询消息线程池任务队列初始大小20000
redeleteHangedFileIntervalint重试删除文件间隔,配合destorymapedfileintervalforcibly120000
regionIdString消息区域DefaultRegion
registerBrokerTimeoutMillsint注册broker超时时间6000
registerNameServerPeriodintbroker注册频率 大于1分钟为1分钟小于10秒为10秒30000
rejectTransactionMessageboolean是否拒绝事物消息false
rocketmqHomeStringRocketMQ主目录/home/rocketmq/rocketmq-all-4.3.2-bin-release
sendMessageThreadPoolNumsint服务端处理消息发送线程池数量1
sendThreadPoolQueueCapacityint消息发送线程池任务队列初始大小10000
serverAsyncSemaphoreValueint异步消息发送最大并发度64
serverCallbackExecutorThreadsintnetty public任务线程池个数,netty网络设计没根据业务类型会创建不同线程池毛笔如处理发送消息,消息消费心跳检测等。如果业务类型(RequestCode)未注册线程池,则由public线程池执行0
serverChannelMaxIdleTimeSecondsint网络连接最大空闲时间。如果链接空闲时间超过此参数设置的值,连接将被关闭120
serverOnewaySemaphoreValueintsend oneway消息请求并发度256
serverPooledByteBufAllocatorEnablebooleanByteBuffer是否开启缓存true
serverSelectorThreadsintIO线程池线程个数,主要是NameServer.broker端解析请求,返回相应的线程个数,这类县城主要是处理网络请求的,解析请求包。然后转发到各个业务线程池完成具体的业务无操作,然后将结果在返回调用方3
serverSocketRcvBufSizeintnetty网络socket接收缓存区大小16MB131072
serverSocketSndBufSizeintnetty网络socket发送缓存区大小16MB131072
serverWorkerThreadsintnetty业务线程池个数8
shortPollingTimeMillslong短轮训等待时间1000
slaveReadEnableboolean从节点是否可读false
startAcceptSendRequestTimeStampint 0
storePathCommitLogStringCommitlog存储目录默认为${storePathRootDir}/commitlog/home/rocketmq/store/commitlog
storePathRootDirStringbroker存储目录 默认为用户的主目录/store/home/rocketmq/store
syncFlushTimeoutlong同步刷盘超时时间5000
traceOnboolean true
transactionCheckIntervallong事物回查周期60000
transactionCheckMaxint事物回查次数15
transactionTimeOutlong事物回查超时时间6000
transferMsgByHeapboolean消息传输是否使用堆内存true
transientStorePoolEnablebooleanCommitlog是否开启 transientStorePool机制,默认为 falsefalse
transientStorePoolSizeinttransientStorePool中缓存 ByteBuffer个数,默认5个5
useEpollNativeSelectorboolean是否启用Epoll IO模型。Linux环境建议开启false
useReentrantLockWhenPutMessageboolean消息存储到commitlog文件时获取锁类型,如果为true使用ReentrantLock否则使用自旋锁false
useTLSboolean是否使用安全传输层协议false
waitTimeMillsInHeartbeatQueuelong清理broker心跳线程等待时间31000
waitTimeMillsInPullQueuelong清除消息拉取线程池任务队列的等待时间。如果系统时间减去任务放入队列中的时间小于waitTimeMillsInPullQueue,本次请求任务暂时不移除该任务5000
waitTimeMillsInSendQueuelong清除发送线程池任务队列的等待时间。如果系统时间减去任务放入队列中的时间小于waitTimeMillsInSendQueue,本次请求任务暂时不移除该任务200
waitTimeMillsInTransactionQueuelong清理提交和回滚消息线程队列等待时间3000
warmMapedFileEnableboolean是否温和地使用 MappedFile如果为true,将不强制将内存映射文件锁定在内存中false
connectWhichBrokerStringFilterServer连接的Broker地址 
filterServerIPStringFilterServerIP地址,默认为本地服务器IP 
compressMsgBodyOverHowmuchint如果消息Body超过该值则启用 
zipCompresslevelintZip压缩方式,默认为5,详细定义请参考java.util.Deflate中的定义 
clientUploadFilterClassEnableboolean是否支持客户端上传 FilterClass代码 
filterClassRepertoryUrlStringfilterClass服务地址,如果 clientUploadFilterClassEnable为false,则需要提供一个地址从该服务器获取过滤类的代码 
fsServerAsyncSemaphorevalueintFilterServer异步请求并发度,默认为2048 
fsServerCallbackExecutorThreadsint处理回调任务的线程池数量,默认为64 
fsServerWorkerThreadsint远程服务调用线程池数量,默认为64 

 

免责声明:文章转载自《RocketMQ 参数详解》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇mac 命令行大杂烩APP 安全测试点概述下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

java数据库登陆页面

下面是一些总结但是部分来源于网络。 1.java语言 2. 面向对象分析设计 XML 语言 网页脚本语言 数据库 应用服务器 集成开发环境 .java语言:JSP、Servlet、JDBC、javaBean(Application)从这四部分开始创建web项目。 (一)java Database Connectivity(JBDC)技术 它是一种执行...

邮政编码的正则表达式

有关代码: package TestRegex; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test01 { /** * 邮政编码正则:"^[1-9]\d{5}$" * ^:正则开始符 * $:正则结束符...

【javaweb】库存物资管理系统思路与总结

题目: 1、有一个存放商品的仓库,每天都有商品出库和入库。 2、每种商品都有名称、生产厂家、型号、规格等。 3、出入库时必须填写出入库单据,单据包括商品名称、生产厂家、型号、 规格、数量、日期、时间、入库单位(或出库单位)名称、送货(或提货)人 姓名。 首先建立数据库goodsmanager table:goods记录商品信息 table:list记录出...

java实现的18位身份证格式验证算法

公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。 1、地址码 表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按 GB/T 2260 的规定执行。 2、出生日期码 表示编码对象出生的年、月、日,按 GB/T 7408 的规定执行。年、月、日...

C#值类型和引用类型

转自:https://www.cnblogs.com/bakuhert/articles/5878086.html 什么是值类型,什么是引用类型 概念:值类型直接存储其值,而引用类型存储对其值的引用。部署:托管堆上部署了所有引用类型。 引用类型:基类为Objcet 值类型:均隐式派生自System.ValueType: 值类型: byte,short,...

基于Boost库的HTTP Post函数

两个函数的区别: 提交表单数据和提交文本数据 表单数据: request_stream << "Content-Type: application/x-www-form-urlencoded "; 文本数据: request_stream << "Content-Type: text/html "; #include <i...