zoukankan      html  css  js  c++  java
  • Zookeeper客户端使用总结(一)

    一、简介

    Apache ZooKeeper是由集群(节点组)使用的一种服务,用于在自身之间协调,并通过稳健的同步技术维护共享数据。ZooKeeper本身是一个分布式应用程序,为写入分布式应用程序提供服务。

    ZooKeeper提供的常见服务如下 :

    • 命名服务 - 按名称标识集群中的节点。它类似于DNS,但仅对于节点。

    • 配置管理 - 加入节点的最近的和最新的系统配置信息。

    • 集群管理 - 实时地在集群和节点状态中加入/离开节点。

    • 选举算法 - 选举一个节点作为协调目的的leader。

    • 锁定和同步服务 - 在修改数据的同时锁定数据。此机制可帮助你在连接其他分布式应用程序(如Apache HBase)时进行自动故障恢复。

    • 高度可靠的数据注册表 - 即使在一个或几个节点关闭时也可以获得数据。

    分布式应用程序提供了很多好处,但它们也抛出了一些复杂和难以解决的挑战。ZooKeeper框架提供了一个完整的机制来克服所有的挑战。竞争条件和死锁使用故障安全同步方法进行处理。另一个主要缺点是数据的不一致性,ZooKeeper使用原子性解析。

    ZooKeeper的好处

    以下是使用ZooKeeper的好处:

    • 简单的分布式协调过程

    • 同步 - 服务器进程之间的相互排斥和协作。此过程有助于Apache HBase进行配置管理。

    • 有序的消息

    • 序列化 - 根据特定规则对数据进行编码。确保应用程序运行一致。这种方法可以在MapReduce中用来协调队列以执行运行的线程。

    • 可靠性

    • 原子性 - 数据转移完全成功或完全失败,但没有事务是部分的。

    二、客户端的使用

    ZooKeeper命令行界面(CLI)用于与ZooKeeper集合进行交互以进行开发。它有助于调试和解决不同的选项。

    要执行ZooKeeper CLI操作,首先打开ZooKeeper服务器(“bin/zkServer.sh start”),然后打开ZooKeeper客户端(“bin/zkCli.sh”)。一旦客户端启动,你可以执行以下操作:
    1、创建znode

    永久

    create /path /data

    临时有序

    create -e -s /ephe_seq_path  /data

    永久有序

    create -s /seq_path /data 

    临时

    create -e /ephe_path /data

    2、获取数据

    get /path
    3、监视znode的变化

    get /path 1

    4、设置数据

    set /path "FirsZnode"
    5、创建znode的子节点

    create /path/subpath /data

    create /path/subpath2 /data2

    6、列出znode的子节点

    ls /path
    7、检查状态

    stat /path


    8、移除/删除znode
    rm /path

    delete /path(没有子节点的znode)

  • 相关阅读:
    QT:不规则窗口的实现
    Sql Server (错误:7302)
    Qt源码分析之信号和槽机制
    Linux下如何发布Qt程序
    QT程序制作deb包并安装在应用程序菜单
    Another Look at Events(再谈Events)
    Qt全局热键(windows篇)(使用RegisterHotKey和句柄进行注册)
    新浪微博回归平静
    Qt中 QString 和int, char等的“相互”转换,关键是QString.toLocal8Bit().data();
    QT中异形窗口的绘制(winEvent处理WM_NCHITTEST消息)
  • 原文地址:https://www.cnblogs.com/fengyan20150508/p/9048215.html
Copyright © 2011-2022 走看看