Zookeeper集群
1、服务实集群是为了 保证整套系统的高可用
2、注册中心 管理每个服务的依赖关系 zk consul redis eureka
服务器集群和注册中心集群目的不一样
相同点: 为了高可用,某个服务宕机,故障转移
服务器集群 为了高并发
注册中心集群 如果是单台注册中心节点,宕机后可能导致整个微服务无法通讯
注册中心实际是做服务器治理的 要做集群的 要不宕机了 服务之间获取不到 地址信息了!
会员服务从zk中获取 服务地址信息后, 在jvm缓存一份,然后通过事件通知,如果订单服务变化了 会重新更新
Zookeeper 集群选举,一个主(只能一个主) 多个从。底层采用zab协议原子广播。两种方案:
1、恢复模式 leader宕机,follower 重新选举新的leader
2、广播模式 保证每个server之间的数据同步。连接任意一个节点,其他都有的。
如果D为leader 其他为follower
假设 A选择自己为领导者 A需要问B,B投票,A问C,C投票。
三台 超过两票选择A A已经有两票了 其他的就不管了 一半以上