Znode:

1、Znode既是路径(目录)也是信息(文件)

2、Znode有两种分类:一分为临时节点(会话生命周期)和永久节点;二分为普通节点和顺序节点

Watch:

1、监听与通知机制,可以在节点上监听其本身(增、删、改)或其子节点(增、删)事件

2、代码上通过exist、getData、getChildren注册监听,通过create、delete、setData可以触发通知

一致性机制:

1、Single System Image,数据会被同步到所有节点,客户端可以连接任一节点,获取数据。数据同步到各个节点肯定需要一点时间,是最终一致性,所以对于类似转账的业务,不应直接去查,而应注册监听等待通知,才能保证数据一致性

2、Sequential Consistency,同时写同一条记录问题,Leader-Follower机制,写请求都会路由到Leader,每个写请求都会加一个数字标签表明事务顺序,写请求按照顺序执行(异步的分布式系统实现同步的效果)

应用:

Zookeeper最常用的定位是分布式协调服务,协调是一个比较宽泛的概念,按照官方文档它其实可以有很多应用场景

统一命名空间 Name Service 

配置管理

集群管理 Group Membership – 检测成员状态即集群节点状态

集群管理 Election – 集群选举

分布式锁

*分布式队列 – 生产者消费者队列

*Barriers (篱笆墙) - A barrier is a primitive that enables a group of processes to synchronize the beginning and the end of a computation.

*Two-phased Commit两阶段提交,通常用于分布式事务

*BookKeeper – 分布式日志流存储

这些应用的实现原理都是用上面的znode和watch机制,如集群选举,各个节点对应临时顺序节点,顺序最小的为主;分布式锁原理一模一样,顺序最小的节点获取到锁。

转载于:https://www.cnblogs.com/yuzhengzhong/p/10095856.html

Zookeeper基础使用机制原理相关推荐

  1. zookeeper的watcher机制原理详解

    文章目录 客户端注册Watcher 服务端处理getData请求 服务端处理setData请求 客户端触发Watcher 我们都知道在zookeeper中存在watcher机制,查询服务端节点数据时可 ...

  2. Zookeeper的Watcher机制及Watcher原理分析

    Zookeeper的Watcher机制及Watcher原理分析 1 什么是Watcher监听机制 Watcher 监听机制是 Zookeeper中非常重要的特性,我们基于zookeeper上创建的节点 ...

  3. Zookeeper watch机制原理

    Zookeeper watch机制原理 准备工作 watch示例 源码解析 总结 准备工作 经过上一小节的学习我们知道ZookeeperServerMain是单机版的服务器主类 我们可以自己写一个Zk ...

  4. Zookeeper——选举机制原理与Leader和Follower作用

    摘要 本博文主要介绍Zookeeper的选举机制的原理与Zookeeper事务请求处理的原理. 一.zookeeper选举算法原理 Leader 服务器的作用是管理 ZooKeeper 集群中的其他服 ...

  5. Zookeeper的选举机制详解

    本文来说下Zookeeper的选举机制 文章目录 概述 人类选举的基本原理 Zookeeper选举的基本原理 什么场景下 Zookeeper 需要选举 启动时期的 Leader 选举 运行时期的Lea ...

  6. zookeeper的应用和原理

    场景一 有这样一个场景:系统中有大约100w的用户,每个用户平 均有3个邮箱账号,每隔5分钟,每个邮箱账需要收取100封邮件,最多3亿份邮件需要下载到服务器中(不含附件和正文).用20台机器划分计算的 ...

  7. Kaka与Zookeeper的爱恨情仇(——zookeeper过半选举机制)

    关于我们在学习kafka中的一些问题及架构,我想在这里浅谈一下我个人的理解: 之所以说这个kafka呢,主要还是最近做实时的项目中大量用到了kafka这个消息中间件,可以说kafka是我们大数据实时项 ...

  8. spark on yarn 完全分布式_Spark编程笔记(1)-架构基础与运行原理

    引言 根据IBM前首席执行官郭士纳的观点,IT领域每隔十五年就会迎来一 次重大变革 .当前我们正处于第三次信息浪潮(2010年前后),物联网.云计算和大数据技术突飞猛进. 信息爆炸是我们当前所需要解决 ...

  9. 搜索引擎工作的基础流程与原理

    搜索引擎最重要的是什么?有人会说是查询结果的准确性,有人会说是查询结果的丰富性,但其实这些都不是搜索引擎最最致命的地方.对于搜索引擎来说,最最致命的是查询时间.试想一下,如果你在百度界面上查询一个关键 ...

最新文章

  1. 【技术干货】如何进行低功耗设计和开发
  2. 【react开发】使用swiper插件,loop:true时产生的问题解决方案
  3. 软件测试面试-如何测试一个杯子(转)
  4. 调试笔记--keil 测量周期小技巧
  5. bug记录:虚拟机ping不通外网
  6. 源码编译安装gcc-5.3.0
  7. oracle undo表空间缩小,缩小undo表空间全记录
  8. java 处理时间的类_java 日期时间处理类
  9. 小D课堂 - 新版本微服务springcloud+Docker教程_6-02 springcloud网关组件zuul
  10. 【转】C# DateTime.Now详细用法
  11. java web 房屋租赁系统
  12. 数据库基本知识点总结
  13. IntelliJ IDEA 2020 提示“Unmapped Spring configuration files found.Please configure Spring facet.”解决办法
  14. 将World中的向下箭头替换为回车符
  15. php以大写字母分割,js按大写字母拆分字符串
  16. Axure 软件自带的图标元件Icons无法显示的问题解决方法
  17. 年均科研经费 4000 万,教授没有发论文压力,不必教课,这才是神仙科研生活!...
  18. 飞塔防火墙手动升级UTM库
  19. B站马士兵python入门基础版详细笔记(4)
  20. doraemon的python(大更新) django静态文件的配置(出错多的地方)

热门文章

  1. [二叉树]二叉搜索树转换为双向链表(剑指Offer26)
  2. linux loop device
  3. C语言高级编程:数组指针与数组
  4. 第三届类型文学研讨会小记(转)
  5. 单片机小白学步系列(十四) 点亮第一个LED的程序分析
  6. matlab 6.5 设计数字滤波器
  7. 动物识别专家系统python_Python有哪些作用?
  8. linux禁止切换到root,linux禁止普通用户切换至root用户的实例讲解
  9. cpu开机就是60℃_铅锤哥:十五种电脑开机黑屏的原因与解决思路
  10. 【TensorFlow-windows】投影变换