当前位置: 首页 > news >正文

北京靠谱的网站建设企点客服

北京靠谱的网站建设,企点客服,陈铭生是什么小说,b2b还是自己做网站zppkeeper是什么 zookeeper是一个高性能、开源的分布式应用协调服务,它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如实现同步(分布式锁)、配置管理、集群管理。它被设计为易于编程,使用文件系统目录树作为数…

zppkeeper是什么

zookeeper是一个高性能、开源的分布式应用协调服务,它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如实现同步(分布式锁)、配置管理、集群管理。它被设计为易于编程,使用文件系统目录树作为数据模型。服务端使用Java语言编写,并且提供了Java和C语言的客户端。

note:分布式的意味着由多台计算机构成的集群,每台计算机之间通过网络通信,这些计算机协调完成共同的目标,对外看来这些机器就是一个整体;协调的意思是多个节点一起完成某一个动作

zookeeper数据模型

如下图所示,zookeeper数据模型是一种分层的树形结构:

  • 树形结构中每个节点称为Znode;
  • 每个Znode都可以有数据(byte[]类型),也可以有子节点;
  • Znode的路径使用斜线分割,例如:/Zoo/Duck,zookeeper中没有相对路径的说法,也即所有节点的路径都要写为绝对路径的方式;
  • zookeeper定义了org.apache.zookeeper.data.Stat数据结构来存储数据的变化、ACL(访问权限)的变化和时间戳;
  • 当zookeeper中节点的数据发生变化时,版本号会递增;
  • 可以对Znode中的数据进行读写操作;

zookeeper典型的应用场景

数据发布/订阅

数据发布/订阅即所谓的配置中心:发布者将数据发布到zk的一个或一系列节点上,订阅者进行数据订阅,可以及时得到数据的变化通知,如下图所示:

应用A将数据发布到zkServer的某个节点(Znode)上,应用B和C会先在zkServer上注册监听该节点的watcher(相当于Listener,基于RPC实现),一旦该节点有数据变化,B和C上的watcher变化得到通知,继而从zkServer上获取最新的数据

负载均衡

zookeeper实现负载均衡本质上是利用zookeeper的配置管理功能,zookeeper实现负载均衡的步骤为:

1、 服务提供者把自己的域名及IP端口映射注册到zookeeper中;
2、 服务消费者通过域名从zookeeper中获取到对应的IP及端口,这里的IP及端口可能有多个,只是获取其中一个;
3、 当服务提供者宕机时,对应的域名与IP的对应就会减少一个映射;
4、 阿里的dubbo服务框架就是基于zookeeper来实现服务路由和负载;

命名服务

在分布式系统当中,命名服务(name service)也是很重要的应用场景,通过zookeeper也可以实现类似于J2EE中JNDI的效果;分布式环境下,命名服务更多的是资源定位,并不是真正的实体资源,其本质也是到zookeeper的集中配置和管理

分布式协调/通知

例如通过zookeeper的watcher和通知机制实现分布式锁和分布式事物

集群管理

获取当前集群中机器的数量、集群中机器的运行状态、集群中节点的上下线操作、集群节点的统一配置等

此外还可以通过zookeeper实现集群master节点的选举、分布式锁(排他锁、共享锁)、分布式队列等。

zookeeper中的一些基本概念

集群角色

  • Leader: 为客户端提供读写服务;
  • Follower: 为客户端提供度服务,客户端到Follower的写请求会转交给Leader角色,Follower会参与Leader的选举;
  • Observer:为客户端提供度服务,不参与Leader的选举过程,一般是为了增强zookeeper集群的读请求并发能力;

会话(Session)

  • session是客户端与zookeeper服务端之间建立的长链接;
  • zookeeper在一个会话中进行心跳检测来感知客户端链接的存活;
  • zookeeper客户端在一个会话中接收来自服务端的watch事件通知;
  • zookeeper可以给会话设置超时时间;

zookeeper的数据节点(ZNode)

  • Znode是zookeeper树形结构中的数据节点,用于存储数据;
  • Znode分为持久节点和临时节点两种类型:
    • 持久节点:一旦创建,除非主动调用删除操作,否则一直存储在zookeeper上;
    • 临时节点:与客户端回话绑定,一旦客户端失效,这个客户端创建的所有临时节点都会被删除;
  • 可以为持久节点或临时节点设置Sequential属性,如果设置该属性则会自动在该节点名称后面追加一个整形数字

zookeeper中的版本

zookeeper中有三种类型的版本:

  • Version:代表当前Znode的版本;
  • Cversion:代表当前Znode的子节点的版本,子节点发生变化时会增加该版本号的值;
  • Aversion:代表当前Znode的ACL(访问控制)的版本,修改节点的访问控制权限时会增加该版本号的值;

zookeeper中的watcher

  • watcher监听在Znode节点上;
  • 当节点的数据更新或子节点的状态发生变化都会使客户端的watcher得到通知;

zookeeper中的ACL(访问控制)

类似于Linux/Unix下的权限控制,有以下几种访问控制权限:

  • CREATE:创建子节点的权限;
  • READ:获取节点数据和子节点列表的权限;
  • WRITE:更新节点数据的权限;
  • DELETE: 删除子节点的权限;
  • ADMIN:设置节点ACL的权限;

noteCREATEDELETE是针对子节点的权限控制

zookeeper的部署模式

zookeeper可以单机部署或集群部署,生产环境下一定要使用集群部署,开发测试可以使用单机部署。当然在单机环境下也可以通过修改端口或使用docker实现集群部署。这里我们只演示单机部署和单机下通过修改端口实现集群部署,docker部署以后有空再研究。

http://www.hkea.cn/news/310618/

相关文章:

  • 做emu对网站有什么要求十大免费无代码开发软件
  • 扬州专业做网站做关键词优化
  • 宿州网站建设贰聚思诚信网站服务器
  • 用照片做模板下载网站好百度爱采购官方网站
  • 微网站建设套餐网络营销是做什么的
  • 徐州有哪些做网站苏州网站建设费用
  • 统一企业信息管理系统网站直通车怎么开效果最佳
  • 武汉外贸网站建设公司外链相册
  • java做网站的权限管理seo描述是什么
  • 招聘网最新招聘信息网武汉seo计费管理
  • 直播软件开发源码重庆seo顾问
  • 公司网站如何做宣传百度视频推广怎么收费
  • 淄博市 网站建设报价郑州seo外包阿亮
  • 网络服务商是指什么网站优化排名工具
  • 网站优化的分析比较好的品牌策划公司有哪些
  • 国外比较好的资源网站电商运营推广是做什么的
  • 佛山房地产网站建设seo实战培训王乃用
  • 如何做可以赚钱的网站关键词如何快速排名
  • 深圳品牌做网站公司有哪些百度app推广
  • 重庆建设行业信息网站搜狗登录入口
  • 同仁行业网站建设报价北京做的好的seo公司
  • 陕西自助建站做网站郑州外语网站建站优化
  • 小型企业网站系统cilimao磁力猫最新版地址
  • 铁岭网站建设移动网站广东网站seo
  • 网站模板插件sem和seo
  • 用wordpress制作网站模板沈阳seo
  • 优化一个网站多少钱宜昌网站seo
  • 刚做的网站怎么才能搜索到枸橼酸西地那非片功效效及作用
  • 罗湖区网站公司专业模板建站
  • 哪有备案好的网站国产系统2345