搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
一键难忘520
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
CANoe用CAPL编程截取CAN Log_canoe的logging模块保存的日志类型
2
机械狗还会给植物浇水?搭载OAK相机让机械狗拥有识别视觉的能力!_斯坦福大学机械狗
3
“2020新冠肺炎记忆”登顶GitHub趋势榜!永不消逝的记忆却没有一行代码
4
【QT教程】QT6界面美化进阶 QT界面美化
5
AI顶流OpenAI又一重磅力作Sora,究竟是什么?一文弄懂Sora:简介|发展历程|主要功能|使用场景|替代软件|AI软件工具推荐!_aisora
6
通过Java和Vue实现pdf的预览和下载_vuejava下载pdf
7
重磅!多模态大模型最新综述!
8
SpringCloud之RabbitMQ
9
Yolov5由升级引起的报错:AttributeError: ‘Upsample‘ object has no attribute ‘recompute_scale_factor‘_("'{}' object has no attribute '{}'".format( attri
10
Swagger笔记—Swagger3详细配置_swagger3配置
当前位置:
article
> 正文
【分布式协调服务】--zookeeper实现原理
作者:一键难忘520 | 2024-07-29 02:12:21
赞
踩
【分布式协调服务】--zookeeper实现原理
文章目录
一、分布式协调机制引用的场景
二、zookeeper的设计
三、zookeeper集群
四、ZAB协议
4.1 ZAB协议的两个基本模式,也是zab核心:
4.1.1 原子广播实现原理(消息广播):
4.1.2 崩溃恢复实现原理(恢复leader节点和恢复数据):
五、Leader选举
基于fastleader选举:
投票过程的流程图:
一、分布式协调机制引用的场景
各个节点的数据一致性
保证任务只在一个节点上执行
最小节点(最先注册的节点)拿到执行权了之后,其他节点便没有权利执行。
如果一个节点挂了,怎么保证其他节点立刻知晓,并接替任务。
存在共享资源,互斥性,安全性如何保证。
二、
zookeeper
的设计
防止单点故障
集群方案(leader,follower).还能分担请求
每个节点的数据是一致的(必须要有leader)
leader,master;
leader选举机制,数据恢复
如何保证数据一致性?(分布式事务)
改进版本的2PC协议
结论:
zab来实现选举:
集群内选举leader来调度简化集群的复杂度,
为什么要做集群:
保证zookeeper协调工具的高性能和高可用(热备,同步)
2pc做数据一致性:
引入了协调者(leader)和参与者(follower)的概念,具体见下方。
三、zookeeper集群
改进版的2PC事务:
follower:处理读请求,转发写请求给leader
leader接收到事务请求后会转发提议给集群中的每一个节点(observer除外)
follwer节点收到提议后响应,返回ack
leader收到过半节点响应ack,便会提交事务(commit),给客户端一个response。反之会执行回滚。
事务提交后会同步给Observer
3种角色特性:
leader:集群的核心,起到了主导整个集群的作用,事务请求的调度和处理。
follower:处理客户端的非事务请求,转发事务请求,参与事务的投票过程,参与leader选举投票
observer:观察者角色&
本文内容由网友自发贡献,转载请注明出处:
https://www.wpsshop.cn/w/一键难忘520/article/detail/896736
推荐阅读
article
Zookeeper
(
从入门
到
掌握
)
看完
这
一篇就够
了
...
Curator 是 Apache ZooKeeper 的Java客户端库。原生Java APIZkClientCurat...
赞
踩
article
HA 模式下的
Hadoop
+
ZooKeeper
+
HBase
启动
关闭
管理
脚本_
关闭
ha
模式...
HA 集群
启动
与
关闭
的顺序请参考:http://blog.csdn.net/u011414200/article/det...
赞
踩
article
Zookeeper
集群
部署详解_
zk
集群
配置
4
台
可以
吗...
一、
集群
结构介绍二、
集群
角色介绍三、
Zookeeper
集群
特性整个
集群
中只要有超过
集群
数量一半的 zookeeper ...
赞
踩
article
ZooKeeper
实战:如何
使用
Watcher
...
例如针对 NodeDataChanged 事件,
ZooKeeper
的
Watcher
只会通知客户端指定数据节点的数据...
赞
踩
article
存在
ZooKeeper
未授权
访问
【原理扫描】
--
通过
防火墙
策略进行修复...
ELK集群
存在
ZooKeeper
未授权
访问
【原理扫描】
存在
ZooKeeper
未授权
访问
【原理扫描】
--
通过
防火墙
...
赞
踩
article
Zookeeper
--四字
命令
...
四字
命令
四字
命令
的使用方式非常简单,通常有两种方式。 第一种是通过Telnet方式,使用Telnet客户端登录ZooK...
赞
踩
article
分布式应用
程序
协调服务
ZooKeeper
详解...
详细讲解
分布式应用
程序
协调服务
ZooKeeper
的相关内容。
分布式应用
程序
协调服务
ZooKeeper
详解 ...
赞
踩
article
不
懂
Zookeeper
?
没关系
,
看这篇
就
够
了
...
点击上方蓝色“Java编程指南”
,
选择“设为星标”回复“Java学习”获取独家整理的学习资料!转载:http://dwz...
赞
踩
article
【
zookeeper
】
zookeeper
安装
+
linux
相关
指令
_
linux
查看
zk
版本...
然后从根目录进入配置文件,创建data文件然后进入conf,将zoo_sample.cfg这个文件复制为zoo.cfg ...
赞
踩
相关标签
zookeeper
分布式
云原生
java
linux
消息队列
服务器
网络
分布式应用程序协调服务
ZooKeeper
工作原理
读写流程
集群
运维