zoukankan      html  css  js  c++  java
  • zookeeper

    zookeeper是一个高性能,分布式的开源
    应用协调服务.比如同步,配置管理,命名
    空间.
    什么是分布式?
    多台机器构成,计算机之间通过网络进行
    通信,彼此进行交互,共同目标

    协调:多个节点一起完成的一个动作
    举例:
    集群成员管理

    选主
    同步

    发布/订阅

    zookeeper数据模型
    分层结构
    属性结构中的每个节点叫做znode
    每个znode都有数据,也可以有子节点
    节点路径:通过斜线分割 /zoo/duck
    通过数据结构stat来存储数据的编号
    数据发生变化是,版本号回递增.

    可以对znode中的数据进行读写操作

    典型的应用场景
    数据发布/订阅
    数据发布/订阅(配置中心):
    发布者将数据发布到zk的一个或一系列
    节点上,订阅者进行数据订阅,当数据有变化时,
    可以及时得到数据的变化通知.

    负载均衡
    本质是利用zk的配置管理功能,步骤:
    1 服务提供者把自己的域名及ip端口的
    映射注册到zk中
    2 服务消费者通过域名从zk中获取到对应的
    ip

    命名服务
    类似于JNDI

    分布式协调/通知
    通过watcher和通知机制实现
    分布式锁
    分布式事务

    集群管理
    管理集群中的机器数量
    集群中机器的运行时状态
    集群中节点的上下线操作
    集群节点的统一配置

    分布式锁
    排它锁
    共享锁
    分布式队列
    FIFO

    zk基本概念
    集群角色
    leader:为客户端提供读和写服务
    follower:提供读服务,所有的写
    服务都需要转交给leader角色,参与
    选举
    observer:提供读服务,不参与选举,
    一般是为了增强zk集群的读请求
    并发能力
    会话
    zk的客户端与服务器端之间的连接
    通过心跳检查保持客户端的连接存活
    接收来自服务端的watch事件

    数据节点(znode)
    不是机器的意思
    zk树形结构中的数据节点,用于
    存储数据
    持久节点:一旦创建,除非主动调用
    删除操作,否则一直存储
    临时节点:会话失效后节点被移除

    版本
    version:当前znode的版本
    cversion:当前znode的字节版本
    aversion:当前znode的ACL
    watcher
    作用于znode节点上
    多种事件通知:数据更新,子节点
    状态等

    31分钟
    
  • 相关阅读:
    DOM基本介绍
    BOM的基本介绍
    对象
    函数
    时钟
    双色球
    JS数据结构
    微信扫二维码根据系统下载apk
    javascript相关积累
    ajax精华
  • 原文地址:https://www.cnblogs.com/luleiitlife/p/8545015.html
Copyright © 2011-2022 走看看