目录
1. nameServer配置信息
启动时打印加载的配置属性
./mqnameserver -c configFile -p
2. 系统架构
2主2从架构
3. NameServer中路由原信息
nameServer 每10秒扫描一次 broker,移除没有激活的broker,连续120秒没有收到心跳包,进行移除,关闭socket连接
broker每30秒,向所有的nameServer发送心跳包
1、nameServer与broker保持长连接2、broker状态存储在brokerLiveTable中3、NameServer每收到一个心跳包更新brokerLiveTable中的状态信息和路由表(topicQueueTable、brokerAddrTable、brokerLiveTable、filterServerTable)
4、路由表(hashTable)更新使用粒度更小的“读写锁”,允许多个生产者并发读取路由信息,保证消息发送的高并发5、NameServer同一时刻只处理一个broker心跳包,多个心跳包请求串行执行
4. 路由发现
路由实体
orderTopicConf: 顺序消息配置内容,来自于kvConfig
queueDatas: topic队列元数据
brokerDatas: topic分布的broker元数据
filterServerTable: broker上过滤服务器地址列表
1.路由发现非实时
2.topic路由发生变化,nameServer不主动推送给客户端
3.客户端定时拉取topic最新的路由信息