rocketmq配置文件参数(broker-xx.properties)
#broker集群名称,用于划分broker
brokerClusterName=MQCluster001
#broker名称,用于主从配对,相同名称的broker才能做主从设置
brokerName=mq_broker_1
#用于标识主从关系,0为主,其他大于0的为从(不能小于0)master设置0,slave设置1。Master角色的Broker支持读和写,Slave角色的Broker仅支持读,也就是Producer只能和Master角色的Broker连接写人消息:Consumer可以连接Master角色的Broker,也可以连接Slave角色的Broker来读取消息。
#Master节点设置
brokerId=0
#Slave节点设置
#brokerId=1
#name server服务器地址及端口,可以是多个,分号隔开
namesrvAddr=192.168.1.100:9876
#创建topic时,若未指定topic下的队列数,则取该默认值作为默认队列数
defaultTopicQueueNums=8
#是否自动创建默认topic,生产需保持关闭
autoCreateTopicEnable=true
#是否自动创建topic的订阅组,默认开启
autoCreateSubscriptionGroup=true
#broker服务监听端口
listenPort=10911
#未消费的持久化消息清理时间点
deleteWhen=04
#持久化消息保存周期(单位:小时),超过该周期将被清理
fileReservedTime=24
#单个commitLog文件的大小限制(单位:字节)
mapedFileSizeCommitLog=1073741824
#单个consumeQueue大小限制(存储的消息条数 * 每条消息的索引大小20)
mapedFileSizeConsumeQueue=8000000
#存储使用率阀值,当使用率超过阀值时,将拒绝发送消息请求
diskMaxUsedSpaceRatio=88
#持久化消息存储根路径
storePathRootDir=/data/store
#commitLog文件存储路径
storePathCommitLog=/data/store/commitlog
#最大消息大小限制(单位:字节)
maxMessageSize=65536
#commitLog最少刷盘page数
flushCommitLogLeastPages=4
#consumeQueue最少刷盘page数
flushConsumeQueueLeastPages=2
#commitLog刷盘间隔时间
flushCommitLogThoroughInterval=10000
#consumeQueue刷盘间隔时间
flushConsumeQueueThoroughInterval=60000
#处理消息发送线程池大小
sendMessageThreadPoolNums=128
#处理消息拉取线程池大小
pullMessageThreadPoolNums=128
#broker角色(SYNC_MASTER:同步双写Master、ASYNC_MASTER:异步复制Master、SLAVE:Slave)
brokerRole=ASYNC_MASTER
#Slave节点设置
#brokerRole=SLAVE
#刷盘方式(ASYNC_FLUSH:异步刷盘、SYNC_FLUSH:同步刷盘)
flushDiskType=ASYNC_FLUSH
刷盘方式与同步方式(以上flushDiskType配置)
异步刷盘方式:在返回写成功状态时,消息可能只是被写人了内存的PAGECACHE ,写操作的返回快,吞吐量大;当内存里的消息量积累到一定程度时,统一触发写磁盘动作,快速写人。
同步刷盘方式:在返回写成功状态时,消息已经被写入了磁盘。具体流程是,消息、写入内存的PAGECACHE 后,立刻通知刷盘线程刷盘,然后等待刷盘成,刷盘线程执行完成后唤醒等待的线程,返回消息写成功的状态。
broker的同步于异步复制(以上brokerRole配置)
同步复制:
同步复制是等Master和Slave均成功写成功后才反馈给客户端写成功状态。
如果Master出故障,Slave上有全部的备份数据,容易恢复,但是同步复制会增大数据写人延迟,降低系统吞吐量。
异步复制:
只要是Master写成功后即返回客户端写成功状态。
系统拥有较低的延迟和较高的吞吐量,但是如果Master出了故障,有些数据因为没有被写人Slave ,有可能会丢失
通常情况下,应该把Master和Save配置成ASYNC FLUSH的刷盘方式,主从之间配置成SYNC MASTER的复制方式,这样即使有一台机器出故障,仍然能保证数据不丢,是个不错的选择。
rocketmq配置文件参数(broker-xx.properties)的更多相关文章
- javaweb 读取properties配置文件参数
场景1:在servlet中读取properties配置文件参数 protected void doGet(HttpServletRequest request, HttpServletResponse ...
- 在kafka/config/目录下面有3个配置文件参数说明(producer.properties。consumer.properties。server.properties)
(1).producer.properties:生产端的配置文件 #指定kafka节点列表,用于获取metadata,不必全部指定 #需要kafka的服务器地址,来获取每一个topic的分片数等元数据 ...
- Nginx 主配置文件参数详解
Nginx 主配置文件参数详解 Nginx 安装完毕后,会有响应的安装目录,安装目录里 nginx.conf 为 nginx 的主配置文件, ginx 主配置文件分为 4 部分,main(全局配置). ...
- 01_MyBatis EHCache集成及所需jar包,ehcache.xml配置文件参数配置及mapper中的参数配置
1 与mybatis集成时需要的jar ehcache-core-2.6.5.jar mybatis-ehcache-1.0.2.jar Mybatis.日志.EHCache所需要的jar包如下 ...
- JAVA之旅(二十九)——文件递归,File结束练习,Properties,Properties存取配置文件,load,Properties的小练习
JAVA之旅(二十九)--文件递归,File结束练习,Properties,Properties存取配置文件,load,Properties的小练习 我们继续学习File 一.文件递归 我们可以来实现 ...
- odoo 配置文件参数大全
odoo 数据库配置文件参数 [options] ; addons模块的查找路径 addons_path = E:\GreenOdoo8.0\source\openerp\addons ; 管理员主控 ...
- Linux网卡配置文件参数注释
Linux网卡配置文件参数注释 作者:Eric 微信:loveoracle11g [root@linux-node2 ~]# cat /etc/sysconfig/network-scripts/if ...
- compose配置文件参数详解
转自:https://www.cnblogs.com/jsonhc/p/7814138.html 本文介绍compose配置文件参数的使用,熟练编写compose文件 [root@docker lnm ...
- my.cnf 配置文件参数解释
my.cnf 配置文件参数解释: #*** client options 相关选项 ***# #以下选项会被MySQL客户端应用读取.注意只有MySQL附带的客户端应用程序保证可以读取这段内容.如果你 ...
随机推荐
- Web框架的原理详情
Web框架的原理 Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web框架了. socket服务 ...
- Javascript之其实我觉得原型链没有难的那么夸张!
原型链.闭包.事件循环等,可以说是js中比较复杂的知识了,复杂的不是因为它的概念,而是因为它们本身都涉及到很多的知识体系.所以很难串联起来,有一个完整的思路.我最近想把js中有点意思的知识都总结整理一 ...
- JVM对象分配
1.JVM中执行字节码new指令时: 1.1.分配内存 分配策略有两种方式:(1)指针碰撞 当JVM内存区域是连续的规整的,所有用过的内存都放在一边,空闲的内存都放在另外一边,中间放着 指针作为分界点 ...
- C语言文件读写命令fprintf和fscanf
以向文件中读取和写入二维数组为例. 以下是fprintf的使用:向文件中写入10*10的二维数组,数组元素为1~100之间的随机数. #include <stdlib.h> #includ ...
- Linux环境安装Docker入门教程
安装 下载 wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.1-ce.tgz 解压 tar -xvf ...
- latex:在公式之中和公式之间插入说明文字和标点符号
在公式之中和公式之间插入说明文字和标点符号,主要使用 \intertext{文本} \shortintertext{文本} \text{文本} 这三个命令 代码: \begin{align*}x^{2 ...
- log4j升级到log4j2
log4j升级到log4j2 1.导入依赖 log4j2应尽量使用同一版本,否则可能出现不兼容的情况 <!-- log4j2 start --> <!-- log4j-1.2-api ...
- 从零开始的SpringBoot项目 ( 四 ) 整合mybatis
一.创建一个SpringBoot项目 从零开始的SpringBoot项目 ( 二 ) 使用IDEA创建一个SpringBoot项目 二.引入相关依赖 <!--mysql数据库驱动--> & ...
- mybatis批量添加数据的三种方式
原文地址:https://www.cnblogs.com/gxyandwmm/p/9565002.html
- 放眼SEM现状及发展历程
http://www.wocaoseo.com/thread-187-1-1.html 由于近年来移动应用的基本普及,搜索引擎营销随之进入高速发展时代,应用层次的提升已经成为企业营销策略的一个重要组成 ...