Java知识点系统整理之Zookeeper

简述ZAB协议?

zab协议是zookeeper专门设计的支持崩溃恢复的原子广播协议。目的是实现分布式zoopkeeper各个节点数据一致性。

zk的数据模型和节点类型?

ZK数据模型
ZooKeeper的视图结构和标准的Unix文件系统类似,其中每个节点称为“数据节点”或ZNode,每个znode可以存储数据,还可以挂载子节点,因此可以称之为“树”。
需要注意的是 创建znode时,每个znode都必须指定值,如果没有值,节点是不能创建成功的。

ZK节点类型

  • 持久(persistent)节点:
    1.session断开后,数据不会丢失
    2.可以创建子节点
  • 临时(ephemeral)节点:
    1.session断开后,数据会丢失
    2.不可以创建子节点
  • 持久顺序(PERSISTENT_SEQUENTIAL)节点:
    (1)、(2)同持久节点
    (3)创建顺序节点时会默认设置顺序标识,即znode名称后会附加一个值 — 顺序号 ,顺序号是一个单调递增的计数器,由父节点维护;
  • 临时顺序(EPHEMERAL_SEQUENTIAL)节点:—> ZK实现分布式锁的基础。
    (1)、(2)同临时节点,(3)同持久顺序节点

简述ZK的统一配置管理、命名服务、配置管理、集群管理、分布式锁?

统一配置管理
把N个服务都共需的配置放在同一个Znode节点中,并在每个服务中watch(监听)节点的变动来改变每个服务中的配置;
命名服务
统一命名服务的理解其实跟域名一样,是我们为这某一部分的资源给它取一个名字,别人通过这个名字就可以拿到对应的资源。
比如说,现在我有一个域名www.java3y.com,但我这个域名下有多台机器:
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
别人访问www.java3y.com即可访问到我的机器,而不是通过IP去访问。
配置管理
集群管理

  • 1.集群状态:可以在某个节点下为每个服务创建临时节点,如果某一个服务挂掉,临时节点自动删除;
  • 2.动态选举Master:在某个节点下为每个服务创建临时顺序节点,最小序号的节点为master,当master挂掉后,可以及时推举最小序号节点为下一任master;

分布式锁
多个服务创建顺序临时节点,会生成带序号的临时节点,生成临时节点序号最小的一个服务获得锁;获得锁后,记得删除创建的临时节点;

讲下zookeeper的watch机制?

watcher的特性

  • 一次性:对于ZooKeeper的watcher,你只需要记住一点,ZooKeeper有watch事件,是一次性触发的,当watch监视的数据发生变化时,通知设置该watch的client,即watcher,由于ZooKeeper的监控都是一次性的,所以每次必须设置监控;
  • 客户端串行执行:客户端watcher回调的过程是一个串行同步的过程,这为我们保证了顺序,同时需要开发人员注意一点,千万不要因为一个watcher的处理逻辑影响了整个客户端的watcher回调;
  • 轻量:WatchedEvent是ZooKeeper整个Watcher通知机制的最小通知单元,整个结构只包含三个部分:通知状态、事件类型和节点路径。也就是说Watcher通知非常的简单,只会告知客户端发生了事件而不会告知其具体内容,需要客户端自己去进行获取,比如NodeDataChanged事件,ZooKeeper只会通知客户端指定节点的数据发生了变更,而不会直接提供具体的数据内容;

zk和eureka的区别?

zookeeper 和 eureka 哪个更好用?

SpringCloud和Dubbo的区别?

什么是Hystrix?简述实现机制?

SpringCloud的核心组件及其使用?

spring cloud 常用的核心组件:
服务注册与发现——Netflix Eureka
客户端负载均衡——Netflix Ribbon
服务熔断器——Netflix Hystrix
服务网关——Netflix Zuul
服务接口调用——Netflix Feign
服务跟踪——Netflix Sleuth
聚合Hystrix监控数据——Netflix Turbine
分布式配置——Spring Cloud Config

你所知道的微服务技术栈?
服务注册与发现——Eureka,Zookeeper
服务路由(API网关)——Zuul
服务熔断器——Hystrix
服务负载均衡——Ribbon Nginx
服务接口调用——Fegin
服务配置与管理——Netfix公司的Archaiusm ,阿里的Diamond
服务调用——Rest RPC gRpc
消息队列——Kafka Rabbitmq activemq
服务配置中心管理——Spring Cloud Config
事件消息总线——SpringCloud Bus

spring cloud 常用的核心组件以及作用

Doubbo的整体架构设计及分层?

简述RabbitMQ的架构设计?

RabbitMQ如何确保消息发送?消息接手?

RabbitMQ的事物消息?

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容