博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
zookeeper
阅读量:4542 次
发布时间:2019-06-08

本文共 974 字,大约阅读时间需要 3 分钟。

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分钟

转载于:https://www.cnblogs.com/luleiitlife/p/8545015.html

你可能感兴趣的文章
Saltstack windows可视化操作(十四)
查看>>
MYSQL基本语句
查看>>
httpservlet在创建实例对象时候默认调用有参数的init方法 destroy()方法 service方法, 父类的init方法给子类实例一个config对象...
查看>>
MAC和PHY的区别 (转自http://www.cnblogs.com/feitian629/archive/2013/01/25/2876857.html)
查看>>
.net core部署到linux
查看>>
html10个特效(转载)
查看>>
#将相同值输出,取一个值
查看>>
记一次戴尔R730服务器安装centos7.3步骤
查看>>
决策树基础
查看>>
献给程序员之如何与陌生人交谈
查看>>
Python之登录接口
查看>>
【arc074E】RGB Sequence
查看>>
工作3年了才开始有自己的积累
查看>>
使用axios向后端传递数据,后端接收不到?
查看>>
List 去处自定义重复对象方法
查看>>
CoreData的使用-1
查看>>
阿里云安装samba
查看>>
jsonp跨域
查看>>
day1-xml语言
查看>>
有谁知道瑞星在windows登录界面图标按钮是如何放上去的吗
查看>>