RocketMQ原理解析-broker 1. broker的启动
来源:互联网 发布:方圆设计软件下载 编辑:程序博客网 时间:2024/05/21 19:39
brker的启动
Broker向namesrv注册
1. 获取namesrv的地址列表(是乱序的)
2. 遍历向每个namesrv注册topic的配置信息topicconfig
Topic在broker文件上的存储json格式
“TopicTest”:{
“perm”:6,
“readQueueNums”:8,
“topicFilterType”:”SINGLE_TAG”,
“topicName”:”TopicTest”,
“writeQueueNums”:8
}
Namesrv接收Broker注册的topic信息, namesrv只存内存,但是broker有任务定时推送
1. 接收数据向RouteInfoManager注册。
Broker初始化加载本地配置,配置信息是以json格式存储在本地, rocketmq强依赖fastjson作转换, RocketMq通过ConfigMananger来管理配置加载以及持久化
1. 加载topic配置${user.home}/store/config/topics.json
{
“dataVersion”:{
“counter”:2,
“timestatmp”:1393729865073
},
“topicConfigTable”:{
//根据consumer的group生成的重试topic
“%RETRY% group_name”:{
“perm”:6,
“readQueueNums”:1,
“topicFilterType”:”SINGLE_TAG”,
“topicName”:”%RETRY%group_name”,
“writeQueueNums”:1
},
“TopicTest”:{
“perm”:6, // 100读权限 , 10写权限 6是110读写权限
“readQueueNums”:8,
“topicFilterType”:”SINGLE_TAG”,
“topicName”:”TopicTest”,
“writeQueueNums”:8
}
}
}
2. 加载消费进度偏移量 ${user.home}/store/config/consumerOffset.json
{
“offsetTable”:{
“%RETRY% group_name@group_name”:{
0:0 //重试队列消费进度为零
},
“TopicTest@ group_name”:{
0:23,1:23,2:22,3:22,4:21,5:18,6:18,7:18
//分组名group_name消费topic为TopicTest的进度为:
// 队列queue=0 消费进度23
// 队列 queue=2 消费进度为22 等等…
}
}
}
3. 加载消费者订阅关系 ${user.home}/store/config/subscriptionGroup.json
{
“dataVersion”:{
“counter”:1,
“timestatmp”:1393641744664
},
“group_name”:{
“brokerId”:0, //0代表这台broker机器为master,若要设为slave值大于0
“consumeBroadcastEnable”:true,
“consumeEnable”:true,
“consumeFromMinEnable”:true,
“groupName”:”group_name”,
“retryMaxTimes”:5,
“retryQueueNums”:1,
“whichBrokerWhenConsumeSlowly”:1
}
}
}
- RocketMQ原理解析-broker 1. broker的启动
- RocketMQ原理解析-broker 1. broker的启动
- RocketMQ原理解析-broker 1. broker的启动
- RocketMQ原理解析-broker 1. broker的启动
- RocketMQ原理解析-broker 2.消息存储
- RocketMQ原理解析-broker 3.load&recover
- RocketMQ原理解析-broker 6.索引服务
- RocketMQ原理解析-broker 2.消息存储
- RocketMQ原理解析-broker 3.load&recover
- RocketMQ原理解析-broker 6.索引服务
- RocketMQ原理解析-broker 2.消息存储
- RocketMQ原理解析-broker 2.消息存储
- RocketMQ原理解析-broker 3.load&recover
- RocketMQ原理解析-broker 6.索引服务
- RocketMQ源码解析-Broker的HA实现
- RocketMQ源码解析-Broker的消息存储
- rocketmq broker
- RocketMQ原理解析-broker 4.HA & master slave
- 菜单显示与隐藏
- ACM训练日记—8月11日
- 机器学习入门学习笔记:(2.1)线性回归理论推导
- 有C/C++/Java基础的,学习Python一篇文章就够了
- 《leetCode》:Implement strStr()
- RocketMQ原理解析-broker 1. broker的启动
- Copying Books(最大化最小值问题)
- Mr. Kitayuta's Colorful Graph(巧用并查集)
- Mariadb
- python的上下文管理和with语句详解
- 51Nod-1597-有限背包计数问题
- 使用Keras进行图像分类
- 深入学习js之浅谈作用域(作用域闭包)
- LinkList02