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

mysql zookeeper 切换_利用ZOOKEEPER技术 MYSQL数据库容灾切换

利用Zookeeper技术

Mysql容灾切换

一、ZooKeeper介绍

1.简介

ZooKeeper是一个为分布式应用所设计的分布的、开源的协调服务。分布式的应用可以建立在同步、配置管理、分组和命名等服务的更

高级别的实现的基础之上。ZooKeeper意欲设计一个易于编程的环境,它的文件系统使用我们所熟悉的目录树结构。ZooKeeper使用Java所编

写,但是支持Java和C两种编程语言。

2.ZooKeeper总体结构

3.ZooKeeper集群由一组Server节点组成,这一组Server节点中存在一个角色为

Leader的节点,其他节点都为Follower。当客户端Client连接到ZooKeeper集群,

并且执行写请求时,这些请求会被发送到Leader节点上,然后Leader节点上数据变

更会同步到集群中其他的Follower节点。

4.Leader节点在接收到数据变更请求后,首先将变更写入本地磁盘,以作恢复之用。当

所有的写请求持久化到磁盘以后,才会将变更应用到内存中。

5.ZooKeeper使用了一种自定义的原子消息协议,在消息层的这种原子特性,保证了整

个协调系统中的节点数据或状态的一致性。Follower基于这种消息协议能够保证本地

的ZooKeeper数据与Leader节点同步,然后基于本地的存储来独立地对外提供服务。

6.当一个Leader节点发生故障失效时,失败故障是快速响应的,消息层负责重新选择

一个Leader,继续作为协调服务集群的中心,处理客户端写请求,并将ZooKeeper

协调系统的数据变更同步(广播)到其他的Follower节点。

3b80c33e4c0782f2292fa158e87d5eaf.png

Zookeeper逻辑图

相关文章:

  • conda入门到精通
  • python class tynu()_调用百度地图API与语音API实现简易地图语音导航
  • 小d课堂mysql_mysql之explain详解(分析索引的最佳使用)
  • LINUX 批量删除文件的几种方法
  • mysql 模糊 不包括_Oracle 模糊查询中不包括某字符串的实现方式
  • star 序列比对2020-12-25
  • java线程模式_Java多线程基础(十一)——Future模式
  • RNA-seq实战--2小时
  • java什么是数组_JAVA中数组是什么?
  • ChIP-seq数据处理流程(附赠长达5小时的视频指导)
  • java录制视频_java 屏幕录制
  • java 双线性插值算法_双线性插值
  • 查看当前linux系统位数
  • java 获取存储过程异常_oracle存储过程获取异常信息码和异常信息
  • java char utf 16_为什么Java char使用UTF-16?
  • 2019年如何成为全栈工程师?
  • Apache的基本使用
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • iOS小技巧之UIImagePickerController实现头像选择
  • Java IO学习笔记一
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • jquery ajax学习笔记
  • Mocha测试初探
  • Mybatis初体验
  • React中的“虫洞”——Context
  • Sequelize 中文文档 v4 - Getting started - 入门
  • 笨办法学C 练习34:动态数组
  • 动态魔术使用DBMS_SQL
  • 简单基于spring的redis配置(单机和集群模式)
  • 前端工程化(Gulp、Webpack)-webpack
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 微信端页面使用-webkit-box和绝对定位时,元素上移的问题
  • PostgreSQL之连接数修改
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • ​如何使用ArcGIS Pro制作渐变河流效果
  • ### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTr
  • (02)Hive SQL编译成MapReduce任务的过程
  • (AngularJS)Angular 控制器之间通信初探
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (二)WCF的Binding模型
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (原創) 未来三学期想要修的课 (日記)
  • (转)树状数组
  • ../depcomp: line 571: exec: g++: not found
  • .bat批处理(四):路径相关%cd%和%~dp0的区别
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • .NET中winform传递参数至Url并获得返回值或文件
  • .sdf和.msp文件读取
  • @AliasFor注解
  • @Autowired @Resource @Qualifier的区别
  • [ Linux Audio 篇 ] 音频开发入门基础知识
  • [3D基础]理解计算机3D图形学中的坐标系变换
  • [C++]拼图游戏
  • [element-ui] el-dialog 中的内容没有预先加载,因此无法获得内部元素的ref 的解决方案
  • [hive]中的字段的数据类型有哪些