简述:zookeeper分布式协调服务,节点数据存储在内存,高吞吐,低延时,zkserver cluster组建zookeeper service保证自身高可用

zookeeper数据模型为类文件目录树结构的文件系统,node节点可以存放1m数据(主要用于存储同步数据及节点元数据,注:数据存储在内存,log存储于磁盘)

角色组成:

  • Leader:负责zxid维护,数据同步,与follower之间消息队列维护
  • Follower:接受client请求,负责写请求转到leader数据的读取
  • Observer:监控指定节点数据变化

数据模型:

zookeeper节点类型:

  • 持久节点:(persistent):client默认创建的znode节点,都是持久节点
  • 临时节点(Ephemeral Nodes):client与zookeeper保持连接时有效,断开znode节点消失。用于session,session结束节点删除,此节点不能有子节点
  • 顺序节点(Sequence Nodes):可以是临时也可以是持久的。zookeeper维护一个计数器,保证在相同父节点下,节点的唯一性,注:计数器使用4bytes的int存储下一个节点序号

zookeeper特征/保证:

  • 顺序一致性:按client发送过来顺序对数据进行更新
  • 原子性:数据更新只有失败和成功两种状态,没有其它结果
  • 相同的视图:client无论连接到哪个server,client都将看到相同的视图
  • 可靠性:一旦数据更新,从更新的那个时刻一直延续到下一次覆盖更新
  • 及时性:clint的视图保证在特定时间内,client看到的视图是最新的

zookeeper角色关联:

注:当leader挂掉,没有新的leader时则zookeeper拒绝对外服务

zookeeper会话(session):

  client与server建立连接zookeeper会分配id,client在特定时间间隔内发送心跳到server保持session有效,如果指定时间未收到心跳,则认为client无效,session中创建的ephemeral节点会被删除

zookeeper监控(Watch):

  client在读取特定的节点上设置watch,当此节点发生变化时,会向注册watch的client发送通知。注:这里指触发一次,如client想再次获取通知,则必须通过另一个读取操作来完成,client断开则watch也被删除

zookeeper应用:

  1,HA,主的选举:

  2,分布式锁:ephemeral特点

zookeeper要点总结的更多相关文章

  1. 《OD学hadoop》第三周0710

    一.分布式集群安装1. Hadoop模式本地模式.伪分布模式.集群模式datanode 使用的机器上的磁盘,存储空间nodemanager使用的机器上的内存和CPU(计算和分析数据) 2. 搭建环境准 ...

  2. ZooKeeper架构设计及其应用要点

    问题导读: 1.ZooKeeper的数据模型是什么 ?2.ZooKeeper应用有哪些陷阱 ?3.每个节点(ZNode)中存储的是什么?4.一个ZNode维护了一个状态结构都包含了什么?5.ZNode ...

  3. Zookeeper配置要点必看

    注意点 zookeeper需要在各个节点的机器上搭建,它的启动也要在各个节点的$ZOOKEEPER_HOME/bin 下启动. 环境搭建 下载安装包并解压. 在$ZOOKEEPER_HOME/conf ...

  4. 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)

    一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...

  5. 搭建zookeeper集群

    简介: Zookeeper 分布式服务框架是 Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务.状态同步服务.集群管理.分布式应用配置 ...

  6. zookeeper集群

    0,Zookeeper基本原理 ZooKeeper集群由一组Server节点组成,这一组Server节点中存在一个角色为Leader的节点,其他节点都为Follower.当客户端Client连接到Zo ...

  7. 转载:ZooKeeper Programmer's Guide(中文翻译)

    本文是为想要创建使用ZooKeeper协调服务优势的分布式应用的开发者准备的.本文包含理论信息和实践信息. 本指南的前四节对各种ZooKeeper概念进行较高层次的讨论.这些概念对于理解ZooKeep ...

  8. ZooKeeper程序员指南(转)

    译自http://zookeeper.apache.org/doc/trunk/zookeeperProgrammers.html 1 简介 本文是为想要创建使用ZooKeeper协调服务优势的分布式 ...

  9. zookeeper 用法和日常运维

    本文以ZooKeeper3.4.3版本的官方指南为基础:http://zookeeper.apache.org/doc/r3.4.3/zookeeperAdmin.html,补充一些作者运维实践中的要 ...

  10. 分布式中,zookeeper的部署

    一:准备 1.概述 为分布式应用提供协调服务的项目 类似于文件系统那样的树形数据结构 目的:将分布式服务不再由于协作冲突而另外实现协作服务 2.数据结构 树形数据结构 zookeeper的每个节点都是 ...

随机推荐

  1. python什么是异常?如何处理异常

    异常处理 什么是异常 异常是程序错误发生的信号.程序一旦出现错误,就会产生一个异常,如果程序中没有处理该异常,该异常就会抛出来,程序的运行也随即终止. 错误分为两种 1.语法错误 2.逻辑错误 如何处 ...

  2. Karmada多云多集群生产实践专场圆满落幕

    摘要:CNCF Karmada社区Cloud Native Days China 2022南京站成功举办. 本文分享自华为云社区<Karmada多云多集群生产实践专场圆满落幕|Cloud Nat ...

  3. ClickHouse数据副本引擎

    我的gitee地址:https://gitee.com/ddxygq/bigdata-technical-pai ,相关文章都放到这个仓库里了. 只有 MergeTree 系列里的表可支持副本: Re ...

  4. python实验报告(第12章)

    实验12:GUI界面编程 一.实验目的和要求 1.学会应用常用控件: 2.学会使用BoxSizer布局: 3.学会事件处理. 二.实验环境 软件版本:Python 3.10 64_bit 三.实验过程 ...

  5. 【c#】从外部复制文本、图片到我的软件中的解决方案(支持ppt,qq等)

    原文地址 https://www.cnblogs.com/younShieh/p/17010572.html 如果本文对你有所帮助,不妨点个关注和推荐呀,这是对笔者最大的支持~       我们先考虑 ...

  6. 主题 1 The Shell

    主题 1 The Shell 课程概览与 shell · the missing semester of your cs education (missing-semester-cn.github.i ...

  7. C/S UDP通信实践踩坑记录与对于ICMP的进一步认识

    背景 最近有个业务场景需要服务端(简称S)与客户端(简称C)设计一套基于UDP的通信协议--要求尽可能快的前提下可容忍一定丢包率,得以比较深入地学习和了解UDP通信和实践,在开发调试期间先后碰到了C端 ...

  8. ONNX模型分析与使用

    本文大部分内容为对 ONNX 官方资料的总结和翻译,部分知识点参考网上质量高的博客. 一,ONNX 概述 深度学习算法大多通过计算数据流图来完成神经网络的深度学习过程. 一些框架(例如CNTK,Caf ...

  9. 过年必备!亲戚计算器「GitHub 热点速览 v.23.02」

    过完这周大家就要开始为期 7 天的春节长假了,当然有些 HG 小伙伴拥有了 10+ 天的长假就低调点不要告诉他人,以免招人妒忌.春节必经的事情可能就是走亲戚了,所以本周特推选取了一个研究亲戚关系的资深 ...

  10. Three.js 进阶之旅:新春特典-Rabbit craft go 🐇

    声明:本文涉及图文和模型素材仅用于个人学习.研究和欣赏,请勿二次修改.非法传播.转载.出版.商用.及进行其他获利行为. 摘要 兔年到了,祝大家身体健,康万事顺利.本文内容作为兔年新春纪念页面,将使用 ...