针对问题1: NameServer集群节点互不通讯,这个怎么保证节点存储数据的一致性。 无法做到强一致性,其思想类似于最终一致性,极端情况下,例如NameServer出现所谓的网络分区,nameServer的数据会不一致,这样有可能导致消息消费出现一定的问题,但RocketMQ实践中,NameServer,Broker处在同一个网络,故发生无法最终一致性的情况几乎是不会发生的。
针对问题2: Broker通过固定地址获取NameServer的代码入口为:BrokerController,通过一个定时任务定时去拉取。 在 2019-03-30 01:31:09,"zhangyubo_qq" <[email protected]> 写道: hi,请问nameserver两个问题: 1,nameserver集群节点间互不通讯,这个怎么保证节点里存储的数据一致性问题呢? 比如,不同nameserver节点存储的topic路由数据可能会不一致。而client会连其中一个节点 2,nameserver地址通过静态http地址可以获取,这个 “http://jmenv.tbsite.net:8080/rocketmq/nsaddr” 8080进程的源码在哪个module里啊,没找到?不清楚这个暴露web接口的进程,内部是否会对nameserver集群各节点数据一致性做判断并维护 from yb
