zkeeper入门及应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
zkeeper入门及应用.doc

如何使用 Zookeeper作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的 一致性问题,它能提供基于类似于文件系统的B录节点树方式的数据存储,但是 Zookeeper并不是用来专门存储数据的,它的作用主要是用來维护和监控你存储 的数据的状态变化。通过监控这些数据状态的变化,从而可以达到棊于数据的集 群管理,后面将会详细介绍Zookeeper能够解决的一些典型问题,这里先介绍 一下,Zookeeper的操作接口和简单使用示例、 常用接口列表 客户端耍连接Zookeeper服务器可以通过创建org.apache.zookeeper. ZooKeeper的一个实例对象,然后调用这个类提供的接U来和服务器交互。 前面说了 ZooKeeper主要是用来维护和监控一个0录节点树中存储的数据的状 态,所有我们能够操作ZooKeeper的也和操作F1录节点树大体一样,如创建一 个目录节点,给某个目录节点设置数据,获取某个目录节点的所有子目录节点, 给某个目录节点设置权限和监控这个目录节点的状态变化。 这些接UI如下表所示: 表 1 org.apache.zookeeper. ZooKeeper 方法歹0表 方法名方法功能描述 创建一个给定的目录节 点path,并给它设置 数据,CreateMode 标 识有四种形式的A录节 点,分别是 String create (String path, String create (String path, byte口 data, ListACL acl,CreateMode Mode) ,存储的数据不会丢失; crpat p PERSISTENT_SEQUENTIA L:顺序自动编号的目录 节点,这种目录节点会 根据当前已近存在的节 点数自动加1,然后返 回给客户端已经成功创 建的目录节点名; EPHEMERAL:临时目录节 Stat exists (String path, boolean watch) Stat exists(String path,Watcher watcher) void delete(String path, int version) ListStringgetChiIdren(String path, boolean watch) Stat setData(String path, byte[] data, int version) 点,一旦创建这个节点 的客户端与服务器端U 也就是session超时, 这种节点会被自动删 除; EPHEMERAL_SEQUENTIAL :临时自6编号节点 判断某个path是否存 在,并设置是否监控这 个A泶节点,这里的 watcher是在创建 ZooKeeper实例时指定 的 watcher, exists 方 法还有一个重载方法, 可以指定特定的 watcher 重载方法,这里给某个 目录节点设置特定的 watcher, Watcher 在 ZooKccpcr是一个核心 功能,Watcher可以监 控目录节点的数据变化 以及子目录的变化,一 旦这些状态发生变化, 服务器就会通知所有设 置在这个目录节点上的 Watcher,从而每个客户 端都很快知道它所关注 的S录节点的状态发生 变化,而做出相应的反 应 删除path对应的目录 节点,version 为 -1 可以匹配任何版本,也 就删除Y这个A录节点 所有数据 获取指定path下的所 有子目录节点,同 样 getChi 1 dren 方法 也有一个重载方法可以 设置特定的watcher 监控子节点的状态 给path设置数据,可 以指定这个数据的版本 byte[] getData(String path, boolean watch, Stat stat) vo i daddAuthlnfo (String scheme, byte[] auth) Stat setACL(String path, ListACL acl, int version) ListACLgetACL (String path,Stat stat) 号,如果version为 -1怎可以匹配任何版 本 获取这个path对应的 A泶节点存储的数据, 数据的版本等信息可以 通过stat来指定,同 时还可以设置是否监控 这个0录节点数据的状 态 客户端将自己的授权信 息提交给服务器,服务 器将根据这个授权信息 验证客户端的访问权 限。 给某个目录节点重新设 罝访问权限,需要注意 的是Zookeeper中的 S录节点权限不具冇传 递性,父目录节点的权 限不能传递给子目录节 点。目录节点ACL由网 部分组成:perms和 id。 Perms 有 ALL、 READ、 WRITE、CREATE、DELETE、 AD

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档