Zookeeper实现注册与发现

1.Zookeeper的数据模型

      (1) Zookeeper的数据模型,类似于树形结构:

                                        

     (2) Zookeeper的每一个节点成为称为Znode,主要用来存储数据。

           

  1. data : 存储数据信息。
  2. acl   : 记录Znode的访问权限。
  3. child : 当前节点的子节点引用。
  4. stat :包含Znode的各种元数据,事物Id,版本号等。 

     (3) Znode的引用方式是路径引用,例如:

           /core/UserCoreService

2.Zookeeper的事件通知

      Watch相当于注册在特定Znode上的触发器,当该Znode中执行写操作时,服务端会异步通知客户端。

      具体的交互过程:

  • 客户端调用 getData() 方法,watch参数是true。服务器接收到请求,返回节点数据,并且在对应的哈希表里插入被 Watch的Znode路径,以及Watcher列表。
  • 当被Watch的Znode已删除,服务端会查找哈希表,找到该Znode对应的所有Watcher,异步通知客户端,并且删除哈希表中对应的key-value;

3.实现注册与发现

      (1)注册

            提供者将自身信息(ip,port,权重等)注册到zookeeper上。zookeeper为其创建一个Znode,该节点的data中保存提供者的信息。

      (2)发现

            消费者根据路径参数去zookeeper中getData()自己需要调用的提供者信息,将服务注册信息缓存到本地。

转载于:https://www.cnblogs.com/zhouzhile/p/11194439.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/363701.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

class 命名规范

本文是从简书复制的, markdown语法可能有些出入, 想看"正版"和更多内容请关注 简书: 小贤笔记 注: 文章摘自 penggelies07- 简书, super晴天 - CSDN 常见class关键词 布局类:header, footer, container, main, content, aside, page, section 包裹类&am…

web策略类游戏开发(四)一个可以承载万人在线的架构

web策略类游戏开发(四)一个可以承载万人在线的架构 Webgame现在已经开始需要进入大统一服务器时代,每个游戏区域容纳的玩家数量将从现在的几万人发展到几十万人,因此在新的背景下,webgame如何处理大量用户的请求将成为问题。目前一台asp.net做…

htc g7 android 4.4,HTC G7刷机,从WM手机刷到了安卓,开启了新的刷机体验....

2011.0914.晚上22:00使用2010的教程刷机,降级时黑屏。使用老的教程,一开始降级从094降到0.83(2010技术)黑屏,但是未板砖,还有开机声音,无法控制机器。没办法,只能使用RUU技术,window…

Java的编年史和低延迟

总览 我正在看Typesafe的Rolan Kuhn在介绍反应流方面的出色演讲,乍一看似乎与《纪事报》有一些相似的目标,但是当您深入研究细节时,对我来说显然有一些关键假设是根本不同。 关键假设 《纪事》设计的主要假设是 低延迟是您的问题&#xff0c…

复制物料时不复制安全库存

1.打开bos,选择物料-功能控制 2.把允许复制去掉 转载于:https://www.cnblogs.com/RogerLu/p/10441588.html

CSS实现水平垂直居中

1、需求分析 子元素在父元素中水平垂直居中 2、技术分析 基础的css、html 3、详细分析 如图: 3.1 HTML部分 如图所示&#xff0c;大边框内包含一个小边框两部分&#xff0c;设置一个父元素div和一个子元素div。 <div class"container">父元素<div class…

2008/5/5

go haywire 非常生气Imagination is the source of creation. 想象是创造之源.转载于:https://www.cnblogs.com/fishert/archive/2008/05/06/1184243.html

鸿蒙3部曲先看哪部,讨论雪鹰与鸿蒙三部曲的关系

1、相信番茄的每部小说出来&#xff0c;心里都在想这会不会是鸿蒙三部曲的最后一部呢&#xff0c;鸿蒙金榜最后一位掌控者呢。2、但是隔了这么多部&#xff0c;番茄依旧未写&#xff0c;第三部&#xff0c;让人不禁思考&#xff0c;会不会第三部是番茄的封山之作呢。3、如果说前…

python装饰器概念与应用

格式一&#xff1a;装饰器外层不传参&#xff0c;内层传参 user_status False # 用户登录了就把这个改成Truedef login(func): # 把要执行的henan模块从这里传进来def inner(*args, **kwargs): # 再定义一层函数&#xff0c;参数为henan的参数_username "alex" …

从Java连接到Cassandra

在我的帖子Hello Cassandra中 &#xff0c;我研究了如何下载Cassandra NoSQL数据库并使用cqlsh连接到Cassandra数据库。 在本文中&#xff0c;我将介绍从Java客户端连接到Cassandra数据库的基础知识。 尽管有几种可用于从Java访问Cassandra数据库的 框架 &#xff0c;但我将在…

Django---Model操作

一、字段 1 AutoField(Field)2 - int自增列&#xff0c;必须填入参数 primary_keyTrue3 4 BigAutoField(AutoField)5 - bigint自增列&#xff0c;必须填入参数 primary_keyTrue6 7 注&#xff1a;当model中如果没有自增列&#xff0c;则自动会创建…

8. Action过滤

Action过滤原文: http://quickstarts.asp.net/3-5-extensions/mvc/ActionFiltering.aspx1. 介绍一般Action与用户动作是一对一的关系,用户的某一个动作对应一个特定的Action.然而,有时你可能会希望在Action执行的前后执行指定的操作,MVC中可以通过Action过滤器来实现这个功能.A…

android运行时状态,Android 如何保存Android 运行时状态

Android 如何保存Android 运行时状态使用 SaveInstanceState去保存运行时数据首先&#xff0c;我们需要重写一下系统的public void onSaveInstanceState(Bundle savedInstanceState)方法并在onSaveInstanceState方法中添加需要保存的数据。最后我们可以在onRestoreInstanceStat…

程序文件分类及编写要求

一级&#xff1a;管理体系手册 由质量管理部负责编制&#xff0c;最高管理者批准后发布生效。举例如&#xff1a;XX公司管理手册 二级&#xff1a;管理体系程序文件 由各相关部门进行编写&#xff0c;质量管理部体系负责人审核通过各部门评审会签&#xff0c;由管理者代表批…

仿制药的美丽与陌生

最近&#xff0c;我正在为Oracle认证专家Java SE 7程序员考试做准备&#xff0c;而我恰巧在Java泛型领域遇到了一些看起来很奇怪的结构。 但是&#xff0c;我也看到了一些巧妙而优雅的代码。 我发现这些示例值得分享&#xff0c;这不仅是因为它们可以使您的设计选择更容易&…

C# 判断txt文件编码格式

/// <summary> /// 获取文件的编码格式 /// </summary> public class EncodingType{/// <summary> /// 给定文件的路径&#xff0c;读取文件的二进制数据&#xff0c;判断文件的编码类型 /// </summary> /// <param name“FILE_NAME“>文件路径&…

Vuex的第一次接触

前言&#xff1a;最近在做Vue实现去哪网&#xff0c;想要实现在城市列表页面&#xff0c;点击某个城市的时候&#xff0c;主页的头部的城市会随着改变&#xff0c;就是首页和城市页面有共用的数据要分享&#xff0c;这里使用Vuex 1. Vuex是什么&#xff1f; 是Vue官方推荐的数…

乐刻运动 app android,乐刻运动

乐刻运动是一款广受欢迎的运动健身软件&#xff0c;不论你是想打造完美身材还是减脂减重&#xff0c;乐刻运动都会为你制定严格而又科学的运动健身计划&#xff0c;相当于一个掌上私人的健身教练&#xff0c;时刻关注你的健身状况&#xff0c;快来下载试试吧。乐刻运动软件优势…

新的公司:Dendrite

开始新的学习 好好学好技术&#xff0c;为了未来.ganjuebucuo 转载于:https://www.cnblogs.com/xinhua327/articles/1188299.html

RK3288 mipi屏调试流程

CPU&#xff1a;RK3288 系统&#xff1a;Android 5.1 1、修改kernel/arch/arm/configs/rockchip_defconfig&#xff0c;打开mipi屏开关 # CONFIG_LCD_GENERAL is not set CONFIG_LCD_MIPIy CONFIG_RK_TRSMy # CONFIG_RK32_LVDS is not set # CONFIG_RK32_DP is not set # CONFI…