没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
9页
Zookeeper是一个高可用的分布式数据管理和协调框架,并且能够很好的保证分布式环境中数据的一致性。在越来越多的分布式系统(Hadoop、HBase、Kafka)中,Zookeeper都作为核心组件使用。 Zookeeper的应用场景主要有以下几种 1.数据发布/订阅 2.负载均衡 3.命名服务 4.分布式协调/通知 5.集群管理 6.Master选举 7.分布式锁 8.分布式队列
资源详情
资源评论
资源推荐
Zookeeper的应用场景
Zookeeper是一个高可用的分布式数据管理和协调框架,并且能够很好的保证分布式环境中数据的
一致性。在越来越多的分布式系统(Hadoop、HBase、Kafka)中,Zookeeper都作为核心组件使用。
1.数据发布/订阅
数据发布/订阅系统,即配置中心。需要发布者将数据发布到Zookeeper的节点上,供订阅者进行数
据订阅,进而达到动态获取数据的目的,实现配置信息的集中式管理和数据的动态更新。发布/订阅一般
有两种设计模式:推模式和拉模式,服务端主动将数据更新发送给所有订阅的客户端称为推模式;客户
端主动请求获取最新数据称为拉模式,Zookeeper采用了推拉相结合的模式,客户端向服务端注册自己
需要关注的节点,一旦该节点数据发生变更,那么服务端就会向相应的客户端推送Watcher事件通知,
客户端接收到此通知后,主动到服务端获取最新的数据。
若将配置信息存放到Zookeeper上进行集中管理,在通常情况下,应用在启动时会主动到
Zookeeper服务端上进行一次配置信息的获取,同时,在指定节点上注册一个Watcher监听,这样在配
置信息发生变更,服务端都会实时通知所有订阅的客户端,从而达到实时获取最新配置的目的。
2.负载均衡
负载均衡是一种相当常见的计算机网络技术,用来对多个计算机、网络连接、CPU、磁盘驱动或其
他资源进行分配负载,以达到优化资源使用、最大化吞吐率、最小化响应时间和避免过载的目的。
使用Zookeeper实现动态DNS服务
域名配置:首先在Zookeeper上创建一个节点来进行域名配置,如
DDNS/app1/server.app1.company1.com。
域名解析:应用首先从域名节点中获取IP地址和端口的配置,进行自行解析。同时,应用程序
还会在域名节点上注册一个数据变更Watcher监听,以便及时收到域名变更的通知。
域名变更:若发生IP或端口号变更,此时需要进行域名变更操作,此时,只需要对指定的域名
节点进行更新操作,Zookeeper就会向订阅的客户端发送这个事件通知,客户端之后就再次进
行域名配置的获取。
3.命名服务
命名服务是分步实现系统中较为常见的一类场景,分布式系统中,被命名的实体通常可以是集群中
的机器、提供的服务地址或远程对象等,通过命名服务,客户端可以根据指定名字来获取资源的实体、
服务地址和提供者的信息。Zookeeper也可帮助应用系统通过资源引用的方式来实现对资源的定位和使
用,广义上的命名服务的资源定位都不是真正意义上的实体资源,在分布式环境中,上层应用仅仅需要
一个全局唯一的名字。Zookeeper可以实现一套分布式全局唯一ID的分配机制。
摄尔修斯
- 粉丝: 3
- 资源: 18
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0