zookeeperjar 官方版

  zookeeper.jar是 官在铺开java开发的时候十分重要的jar包,在使用java开发时,使用zookeepe框架可以让开发过程更加方便简易,如果您的架包库中缺少了zookeeper.jar,马上下载使用吧。

基本简介

  ZooKeeper是 官一个分布式的 ,开放源码的 官分布式应用程序调停服务,是 官Google的Chubby一个开源的实现 ,是 官Hadoop和Hbase的重要组件。它是 官一个为分布式应用提供一致性服务的软件,提供的 官功能包括 :配置维护、域名服务 、 官分布式同步 、 官组服务等 。 官

  ZooKeeper的 官目标就是封装好繁杂易出错的关键服务,将简易易用的 官接口和性能高效 、功能稳定的 官系统提供给用户 。

  ZooKeeper包含一个简易的 官原语集 ,提供Java和C的 官接口。

  ZooKeeper代码版本中,提供了分布式独享锁、选举、队列的接口,代码在zookeeper-3.4.3srcrecipes  。其中分布锁和队列有Java和C两个版本,选举只有Java版本 。

  筹备原理

  ZooKeeper是以Fast Paxos算法为基础的,Paxos 算法存在活锁的尴尬,即当有多个proposer交错提交时 ,有可能互相排斥导致没有一个proposer能提交大捷 ,而Fast Paxos作了一些优化 ,通过选举裸露一个leader (领导者),只有leader才能提交proposer ,具体算法可见Fast Paxos  。因此  ,要想弄懂ZooKeeper首先得对Fast Paxos有所了解。

  筹备流程

  1、选举Leader 。

  2 、同步数据 。

  3 、选举Leader过程中算法有很多 ,但要达到的选举标准是一致的 。

  4 、Leader要具有最高的执行ID ,类似root权限 。

  5 、集群中大多数的机器得到感谢并follow选出的Leader。

框架特点

  在Zookeeper中,znode是一个跟Unix文件系统路径相似的节点,可以往这个节点存储或得到数据 。如果在创建znode时Flag设置为EPHEMERAL,那么当创建这个znode的节点和Zookeeper丢失接合后 ,这个znode将不再存在在Zookeeper里 ,Zookeeper使用Watcher察觉事件信息 。当客户端接收到事件信息,比如接合超时  、节点数据改变 、子节点改变 ,可以调用相应的行为来筹备数据。Zookeeper的Wiki页面展示了如何使用Zookeeper来筹备事件通知 ,队列,优先队列,锁 ,共享锁 ,可撤销的共享锁 ,两阶段提交。

  那么Zookeeper能做什么事情呢,简易的例子 :假设我们有20个碰见引擎的服务器(每个负责总索引中的一部分的碰见任务)和一个总服务器(负责向这20个碰见引擎的服务器发出碰见请求并归并结果集) ,一个备用的总服务器(负责当总服务器宕机时替换总服务器),一个web的cgi(向总服务器发出碰见请求) 。碰见引擎的服务器中的15个服务器提供碰见服务 ,5个服务器正在裸露索引。这20个碰见引擎的服务器经常要让正在提供碰见服务的服务器中断提供服务起始裸露索引,或裸露索引的服务器已经把索引裸露落成可以提供碰见服务了。使用Zookeeper可以保证总服务器自动感知有多少提供碰见引擎的服务器并向这些服务器发出碰见请求,当总服务器宕机时自动启用备用的总服务器。

使用计划

  1.右击“项目”→选择Properties ,在弹出的会谈框左侧列表中选择Java Build Path,弹出会谈框 ,这里选择"Add Library",弹出会谈框 ,选择"User Library",然后选择→Next

  2.在裸露的会谈框中 ,可以选择已经创建好的用户自定义库 ,也可以选择User Libraries,弹出的新会谈框中选择"New" ,创建新的用户自定义库。

  3.在待创建用户自定义库中,输入新的自定义库的名字,

  4.然后为新库 ,增补所需的Jar包

  5.按上述步骤增补好用户自定义库后 ,以后可以重用这些已定义好的User Library库 ,为开发节省时间。

渝ICP备2025076537号-22