存储方法入口
处理RequestCode.REGISTER_BROKER
-> RouteInfoManager#registerBroker
-> ReentrantReadWriteLock.writeLock // 读写锁
存储Broker、Topic路由信息
// 存储Topic下的队列信息,包括brokerName
HashMap<String/* topic */, List<QueueData>> topicQueueTable
// 根据brokerName查询Broker信息,包含brokerAddress
HashMap<String/* brokerName */, BrokerData> brokerAddrTable
// 当前集群下有哪些brokername构成
HashMap<String/* clusterName */, Set<String/* brokerName */>> clusterAddrTable
// 根据brokerAddress,查询live信息
HashMap<String/* brokerAddr */, BrokerLiveInfo> brokerLiveTable
特点
无状态:不会持久化Broker、Topic的信息,都存储在内存中
互不通信:多个NameServer互不通信,broker启动后向所有NameServer都注册,broker启动需要知道所有的NameServer地址
独立性:不依赖其它框架