• ZooKeeper 编程指南


    本文大部分翻译自: http://zookeeper.apache.org/doc/r3.1.2/zookeeperProgrammers.html

    引言:

         Zookeeper主要为分布式程序提供一致性协调服务。

    Zookeeper数据模型:

         Zookeeper有一个分层的命名空间,很像一个分布式文件系统。与文件系统唯一的不同的是在系统中的每个节点可以包含数据和子节点。

    Znodes:en

          在Zookeeper树中的每一个节点被称作为znode,znode维护了一个状态结构,其中包括数据变化的版本号,ccl变化,时间戳。每次数据改变之后,版本号就会增加。。每次客户更新数据的时候,也必须提供原数据的版本号。如果zookeeper里面存储的是更新的数据,那么这个更新就会失败(也可以忽视这个版本强制更新)。

          注意,在zookeeper中,znode是数据节点(data node),服务器(server)指的是上面运行了zookeeper服务的机器,quorum peers指着的是组成一个合辑(ensemble )的服务器。客户(client)指的是任何使用zookeeper服务的宿主或者进程。

         Znode是变成着主要操作的实体,它有一下几个特性:

         观察(Watches)

              客户可以在znodes上设置观察。这个znode上面的变化会出发这个观察。并清除这个观察。客户会在观察触发的时候得到通知。

         数据存储(Data Access)

              每个节点有一个访问控制表来限制谁可以对这个节点进行读写。

          瞬时节点(Ephemeral Nodes)

               Zookeeper有一类节点叫做瞬时节点,它的生命周期同创建它的会话(session)一样。当一个session结束之后,该节点就会不被自动删除。由于这个特性,它不允许有子节点。

          顺序节点(Sequence Nodes) -- 唯一命名

                创建znode的时候,你可以要求zookeeper添加一个单调递增的计数器在后面。可以用于Queue Recipe

              

       

  • 相关阅读:
    解决asp.net Core Mvc网页汉字乱码问题
    DbInitializer.cs初始化过程中context.entityName.Add()遇到的类型不匹配错误
    EF Core » 关系
    EF Core » 影子属性
    如何增加Asp.Net Core生成的模板网站中用户信息表中的列(AspNetUsers)
    Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio »迁移
    centos下添加git
    Linux网络流量实时监控ifstat iftop命令详解
    常见CEPH操作命令
    CentOS 6.3下Samba服务器的安装与配置
  • 原文地址:https://www.cnblogs.com/zhangzhang/p/2864368.html
Copyright © 2020-2023  润新知