#==========官方的解释========================== #Zookeeper是一个分布式协调服务;就是为用户的分布式应用程序提供协调服务
-
1、zookeeper是为别的分布式程序服务的
-
2、Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务)
-
3、Zookeeper所提供的服务涵盖:主从协调、服务器节点动态上下线、统一配置管理、分布式共享锁、统一名称服务……
-
4、虽然说可以提供各种服务,但是zookeeper在底层其实只提供了两个功能:
a、管理(存储,读取)用户程序提交的数据;
b、并为用户程序提供数据节点监听服务;
#=======================个人理解==================
-
1:zookeeper是分布式的程序,可以为其他分布式系统提供“调度协调”的功能,它就相当于一个中间的存储器,一端把信息放上去,另一端去哪里那信息下来分析。应用场景很广,不限于哪种应用场景。比如:电商、服务器负载均衡、分布式锁、自动感知服务器上下线情况等。
-
2:功能
1.)为用户(对于zookeeper来说,我们系统的服务器端和客户端都是它的客户端用户)提供 增、删、改、查等功能。也就是用户可以往上面写信息。
这就意味着服务器上线的时候可以去zookeeper哪里注册自己的状态,同时客户端程序也可以 从zookeeper哪里获取那些服务器是在线的。
2.)用户程序提供数据节点监听服务。用户想及时的知道zookeeper的服务器状态信息,就两种形式
用户不断的循环去get数据 (非常的耗费资源,同时也导致zookeeper的负担加重)
用户在zookeeper哪里注册一个监听器,然后被动的等到zookeeper的变化通知即可。(相对可取)