1.zookeeper是一个高性能的分布式数据一致性解决方案,它将那些复杂的,容易出错的分布式一致性服务封装起来,构成一个高效的可靠的原语集,并提供一系列简单易用的接口给用户使用
1)源码开放
2)分布式协调服务,它解决分布式数据一致性问题
a.顺序一致性,
b.原子性,
c.单一视图,
d.可靠性,
e.实时性
3)高性能
4)可以通过zookeeper提供的接口解决分布式应用下的实际问题
2.zookeeper的常见应用场景:
1)数据发布/订阅
含有:一方把数据发布出来,另一方可以通过某种手段得到这些数据
通常数据订阅有俩种方式:
推模式:一般是服务器主动向客户端推送信息
拉模式:指客户端主动去服务器获取数据(通常采用定时轮训的方式)
2)负载均衡
zk上的节点分为永久节点和临时节点,临时节点在客户端和服务器的会话结束的时候,会主动从zk上删除
3)命名服务
提供名称服务。在db中自动增长的主键不能用在集群环境中,uuid可以用在集群环境中,但是没有规律不易理解,这时可以利用zk生成可以在集群环境下使用的自动增长的易于理解的id
4)分布式协调/通知
心跳检测 的目的是判断集群环境中的哪些机器是可用的哪些是不可以用的