Zookeeper的介绍

Zookeeper 是一个开源的分布式的,为分布式应用提供协调服务的 Apache 项目。

特点:

1.Zookeeper是由一个领导者(leader),多个跟随者(follower)组成的集群。

2.leader负责进行投票的发起和决议,更新系统状态。

3.follower用于接收客户端请求并向客户端返回结果,在选举Leader过程中参与投票。

4.集群中只要有半数以上的节点存活,Zookeeper集群就能正常服务。

5.全局数据一致:每个server保存一份相同的数据副本,client无论连接到哪个server,数据都是一致的。

6.更新请求的顺序进行,来自同一个client的更新请求按其发送顺序依次进行。

7.数据更新原子性,一次数据更新要么成功,要么失败。

8.实时性,在一定范围内,client能读取到最新的数据。

暂时就知道这么多。。。

应用场景

提供的服务有:统一命名服务,统一配置管理,统一集群管理,服务器节点动态上下线,软负载均衡等。

统一命名服务:

这个举个例子就是我们客户端client请求www.baidu.com,然后后面由域名解析器解析成IP,多台服务器中的一台为客户端提供服务,但是对外暴露统一的一个域名或者接口,供客户端去访问。

统一配置管理:

一个集群中,所有节点的配置信息是一致的,比如hadoop集群(后续会更新hadoop)对配置文件修改后,希望能够快速同步到各个节点上。

配置管理可以交由Zookeeper上的一个Znode,一旦Znode中的数据备修改,Zookeeper将通知各个节点。

统一集群管理:

参考Hbase中Master状态监控和选举。

服务器的动态上下线:

服务器和Zookeeper保持着3秒的心跳连接,说白点就是,服务器的信息都会在Zookeeper这注册,存储一份,当某台服务器挂掉之后,即2秒连接不到回应,Zookeeper会判断这台机器已经不能提供服务,就会通知客户端client这台机器不能使用,同时会把这台机器的注册信息给提出掉,保持整个集群的正常工作。

软负载均衡:

参考nginx的工作原理。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值