怎么简单介绍Zookeeper

本篇文章为大家展示了怎么简单介绍Zookeeper,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

成都创新互联专注于果洛州网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供果洛州营销型网站建设,果洛州网站制作、果洛州网页设计、果洛州网站官网定制、小程序开发服务,打造果洛州网络公司原创品牌,更为您提供果洛州网站排名全网营销落地服务。

怎么简单介绍Zookeeper

什么是Zookeeper?

简单来说,Zookeeper是一个开源的分布式协同服务系统,Zookeeper的设计目标就是把复杂并且容易出错的分布式协同服务进行封装,并抽象出一个高效可靠的原语接口,并对外提供一系列简单的接口为其他服务调用。其他应用只要使用Zookeeper提供的接口,就可以实现各种分布式应用。例如:分布式锁、分布式选举,主从切换等等。这些案例我们在实战内容中会详细说明。

Zookeeper发展史

Zoookeeper最早是雅虎为了解决内部多个系统之间的协同问题而研发的,后来将其开源并捐赠给了Apache组织。后来Zookeeper在开源界被广泛使用。这里,我列举几个使用了Zookeeper的著名的开源项目。

  • Hadoop:使用Zookeeper来提供NameNode的高可用机制。

  • HBase:使用Zookeeper来保证整个集群中只有一个Master节点,保存集群中的RegionServer列表,保存hbase:meta表的位置。

  • Kafka:使用Zookeeper来对进群中的成员进行管理,并使用Zookeeper提供controller节点的选举机制。

  • Dubbo:使用Zookeeper来实现分布式治理服务的注册中心。

  • SpringCloud:使用Zookeeper来实现微服务注册中心。

还有很多使用Zookeeper作为分布式协同的开源项目,由于数量比较多,这里就不一一列举了,小伙伴们可以自行通过网络查阅。

Zookeeper应用场景

简单点说,Zookeeper可以应用于以下场景当中。

  • 配置管理。

  • DNS服务。

  • 组成员管理。

  • 各种分布式锁。

  • 分布式选举。

  • 数据一致性场景。

但是,需要注意的是:Zookeeper只适合于存储和协同相关的关键数据,不适合用来存储大数据量的数据。

Zookeeper服务的使用

一般情况下,我们在使用Zookeeper时,是通过Zookeeper库来连接并使用Zookeeper的,由Zookeeper客户端负责和Zookeeper集群进行交互。

怎么简单介绍Zookeeper

Zookeeper的数据模型

从本质上讲,Zookeeper的数据模型是层次模型,如下所示。

怎么简单介绍Zookeeper

这种层次模型常见于文件系统,而这种层次模型和Key-Value模型是两种主流的数据模型。Zookeeper使用文件系统模型主要的考虑点如下。

  • 文件系统的树形结构便于表达数据之间的层次关系。

  • 文件系统的树形结构便于为不同的应用分配独立的命名空间。

在Zookeeper中,层次结构的每个节点叫做znode,它不同于文件系统,每个节点都可以保存数据,而且每个节点都有一个版本号,版本号从0开始递增计数。

接下来,我们再来看一个Zookeeper节点的具体示例。

怎么简单介绍Zookeeper

例如,上图中有三个子树,三个子树分别应用于app1、app2和app3三个应用。其中app1的子树实现了一个简单的组成员协议,也就是每个客户端进行p创建一个znode在/app1节点下,而且每个进程创建的znode是以/app1/p_1,/app1/p_2,...,/app1/p_n  这种结构依次存放。只要 /app1/p_n 节点存在,就说明Pn进程在正常的运行。

Zookeeper的节点分类

总体来说,Znode节点可以分为以下四类。

怎么简单介绍Zookeeper

一个Znode节点可以是持久性的,也可以是临时性的。

持久性的Znode:创建节点后即使Zookeeper集群宕机,或者Zookeeper客户端宕机,节点也不会丢失。

临时性的Znode:Zookeeper客户端宕机或者客户端在指定的超时时间内没有给Zookeeper集群发送消息,那么这个节点就会消失。

Znode节点也可以是顺序性的,所谓的顺序性,就是指每个节点会关联一个唯一的单调递增整数,这个单调递增的整数就是Znode节点名称的后缀,比如:/app1/p_1,/app1/p_2等,由此,Znode又有如下两种分类:

持久顺序性的Znode:除了具备持久性的Znode的特性之外,Znode的名称还具备顺序性。

临时顺序性的Znode:除了具备临时性的Znode的特性之外,Znode的名称还具备顺序性。

上述内容就是怎么简单介绍Zookeeper,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。

网页标题:怎么简单介绍Zookeeper
当前路径:https://www.cdcxhl.com/article26/pcehcg.html

成都网站建设公司_创新互联,为您提供外贸网站建设用户体验自适应网站静态网站小程序开发虚拟主机

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设