zookeeper 分布式协调服务
分布式协调服务作用是将多机协调的职责从分布式应用中独立出来,以减少系统的耦合性和增加扩展性。
而zookeeper采用分布式中经典的主从架构:master->slave,通常以动态的存储分布式应用程序中关键的元数据
来达到分布式协调服务的作用,可提供如leader选举、负载均衡、服务发现等服务。
整体架构:
zookeeper采用树形状层级化的内存命名空间,结构类似于文件系统的目录结构,其中每个目录节点称为ZNode,
不同的是每个ZNode每个均可以存储数据,同时具有data、type、version、children、ACL等属性。
其中data:表示存储的实际的数据;type:znode类型、version:节点版本,children:子节点、ACL(Access Control List):权限管理
的一个配置List,定义谁可以对该ZNode进行访问、修改、删除等操作;同时ZNode的数据访问具有原子性,即保证事务请求在各个服务器上
应用的一致性,要嘛均应用,要嘛均不应用。
ZNode类型:
Persistent(持久化节点)、Ephemeral(临时节点,伴随session的生命周期)、sequence(唯一命名,文件名默认追加唯一的自增数字,该类型不会单独存在)
根据三种节点类型,衍生出ZNode四种类型:Persistent、Ephemeral、Persistent_sequence、Ephemeral_sequence
Watcher监听器:
zookeeper的发布/通知机制,当ZNode发生变化,触发watcher,client端可接收到变更通知,而watcher有一个重要的特征:triggered once即watcher一旦触发,
就会被删除,之后需要客户端重新注册watcher继续监听znode的变化,以变快速作出响应。
Seesion:
seesion作为客户端与zookeeper之间的通信通道,现实环境中zookeeper一般是以集群的模式搭建的,而服务器个数推荐奇数,客户端只需要随机的
选择一个服务器建立session即可。
session具有时序性、容错性等特点,如时序性即当客户端发送消息,zookeeper会按照消息当时序进行记录。容错性方面,zookeeper以集
群当形式搭建,zookeeper会保证各个服务器的一致性。当客户端连接的服务器宕机,session会自动连接到其他服务器上。
草稿待续。。。
zookeeper 分布式协调服务的更多相关文章
- ZooKeeper 分布式协调服务介绍
0. 说明 从自己的独立博客迁移,该部分为 Zookeeper分布式协调服务介绍 原文链接 ZooKeeper 指南 1. ZooKeeper 简介 [官方介绍] ZooKeeper 是一种集中式服 ...
- Zookeeper分布式协调服务
1.zookeeper是一个分布式协调的服务. 2.安装zookeeper的软件的机器,我们称之为zk server 3.zk里面的角色有leader.follower.observer,注意只有一个 ...
- zookeeper分布式协调服务的使用一
Zookeeper是一个高性能,分布式的应用协调服务. 提供服务: 1.集群成员的管理(Group Membership) 2.分布式锁(Locking) 3.选主(Leader Election) ...
- 分布式系统理论基础8:zookeeper分布式协调服务
本文转自 https://www.cnblogs.com/bangerlee/p/5268485.html 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到 ...
- 分布式协调服务-Zookeeper
什么是 zookeeper? Zookeeper 是google的chubby一个开源实现,是hadoop的分布式协调服务 它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名 ...
- 分布式协调服务Zookeeper集群之ACL篇
分布式协调服务Zookeeper集群之ACL篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.zookeeper ACL相关知识概览 1>.zookeeper官方文档(h ...
- 分布式协调服务Zookeeper集群监控JMX和ZkWeb应用对比
分布式协调服务Zookeeper集群监控JMX和ZkWeb应用对比 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. JMX是用来远程监控Java应用的框架,这个也可以用来监控其他的J ...
- 分布式协调服务Zookeeper集群搭建
分布式协调服务Zookeeper集群搭建 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装jdk环境 1>.操作环境 [root@node101.yinzhengjie ...
- 分布式协调服务Zookeeper扫盲篇
分布式协调服务Zookeeper扫盲篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 身为运维工程师对kubernetes(k8s)可能比较熟,那么etcd(go语言实现)分布式协 ...
随机推荐
- 1222/2516. Kup
题目描述 Description 首先你们得承认今天的题目很短很简洁... 然后,你们还得承认接下来这个题目的描述更加简洁!!! Task:给出一个N*N(1≤N≤2000)的矩阵,还给出一个整数K. ...
- 6. ClustrixDB 备份恢复
ClustrixDB备份恢复: 一.传统MySQL的备份/恢复 shell> mysqldump -u user -h clustrix host --single-transaction ...
- mybatis config 配置设置说明
<!– 配置设置 –> 2. <settings> 3. <!– 配置全局性 cache 的 ( 开 / 关) defau ...
- ForkJoinPool及并行流解析
parallelStream原理. parallelStream是并行流,依赖jdk1.7出现的Fork/Join框架. Fork/Join框架的核心是工作窃取(work-stealing)算法.那么 ...
- 【bzoj3223】Tyvj 1729 文艺平衡树
题目描述: 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 1 输入 ...
- PISCES: A Programmable, Protocol-Independent Software Switch
Name of article:PISCES: A Programmable, Protocol-Independent Software Switch Origin of the article:S ...
- 微信浏览器video播放视频踩坑
video属性介绍 iOS的属性 playsinline On iPhone, video playsinline elements will now be allowed to play inlin ...
- 【canvas学习笔记三】样式和颜色
上一节我们学习了如何用路径绘制各种形状,但我们只能用默认的颜色和线条.这节就来学习设置不同的颜色和线条样式. 颜色 设置颜色主要有两个属性: fillStyle = color 设置填充颜色 stro ...
- es之零停机重新索引数据
实际生产,对于文档的操作,偶尔会遇到这种问题: 某一个字段的类型不符合后期的业务了,但是当前的索引已经创建了,我们知道es在字段的mapping建立后就不可再次修改mapping的值 比如: 1): ...
- the path component: '/var' is world-writable
java.io.IOException: the path component: '/var' is world-writable. Its permissions are 0666. Pleas ...