157.zookeeper是什么
答案:是一个开源的分布式应用程序协调服务器,是Googlechubby的开源实现是hadoop和hbase的重要组件,他是一个为分布式应用提供一致性服务的软件,提供的功能包括,配置维护,域名服务,分布式同步,组服务等
158.zookeeper都有哪些功能?
答案:1集群管理,监控阶存活状态,运行请求等
2主节点选举,主节点挂掉后,可以从备用节点开始新一轮选主,主节点选举说的就是这个选举的过程,使用zookeeper可以协助完成这个过程
3分布式锁,zookeeper提供了两种锁,独占锁,共享锁,独占锁即一次只能有一个线程使用的资源,共享锁是读锁共享读写互斥,即可以有多个线程同事读一个资源,如果要使用写只能有一个线程使用,zookeeper可以对分布式锁进行控制
4命名服务,在分布式系统中通过使用命名服务,客户端应用能够根据指定名字来获取资源或服务的地址,提供者等信息.
159.zookeeper有几种部署模式
答案:三种,单机部署,集群部署,伪集群部署
160.zookeeper怎么保证主从节点的状态同步
答案:zookeeper的核心是原子广播,这个机制保证了各个server之间的同步,实现这个机制的协议叫做zab协议,zab协议有两种模式,分别是恢复模式和广播模式,党服务启动或者早领导者崩溃后,zab就进入了恢复模式,党领导者被选举出来,且大多数server完成了和leader的状态同步后,恢复模式就结束了,状态同步保障了leader和server具有相同的系统状态
161.集群中为什么要有主节点
答案:在分布式环境中,有些业务逻辑只需要急群众的某一台机器执行,其他机器可以共享这个结果,这样可以减少重复结算,提高性能,这样就需要主节点
162.集群中有3台服务器,其中一台宕机,这个时候zookeeper还可以使用吗?
答案:可以继续使用,单数服务器只要没超过一般的服务器宕机就可以继续使用
163.zookeeper的通知机制
答案:客户端会对某个znode建立一个warcher事件,当该znode发生变化时,这些客户端或收到zookeeper的通知,然后客户端根据znode变化来做出业务上的改变