ZooKeeper 保证数据一致性

learn from 从0开始学大数据(极客时间)

文章目录

    • 1. 分布式一致性原理
    • 2. Paxos 算法与 ZooKeeper 架构

1. 分布式一致性原理

CAP 原理认为,一个提供数据服务的分布式系统 无法同时满足 数据一致性(Consistency)、可用性(Availibility)、分区耐受性(Patition Tolerance)这三个条件

  • 一致性:返回最新的数据或者错误,而不是过期的数据
  • 可用性:每次请求都得到响应,但不保证响应的数据是最新的
  • 分区耐受性:即使网络原因导致部分服务器节点丢失或延迟,系统依然可以操作

关于 CAP 原理,更准确的说法是,在分布式系统必须要满足 分区耐受性 的前提下,可用性一致性 无法同时满足

2. Paxos 算法与 ZooKeeper 架构

  • 收到请求后,发送给其他服务器进行表决
  • 如果收到多个,就按时间戳和服务器排序规则进行表决

只有收到多数表决同意时,才会决定执行
表决机制保证只有一个请求会执行,保证一致性
牺牲了部分可用性,换来数据一致性

  • ZooKeeper 提供的 一致性数据服务,用于 选举 集群当前工作的主服务器
  • ZooKeeper 系统的 多台服务器存储相同数据,并且每次数据更新都要 所有服务器投票表决,ZooKeeper 集群的 性能 会随着 服务器数量的增加而下降

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

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

相关文章

python使方法执行10次_Python提升程序性能的七个手段

1. 使用局部变量尽量使用局部变量代替全局变量: 便于维护, 也可以避免不必要的资源浪费使用局部变量替换模块名字空间的变量, 例如: ls os.linesep. 一方面给可以提高程序性能, 局部变量查找速度更快; 另一方面可以采用简短标识符代替冗长的模块变量, 提高可读性.2. 减少函数调…

java sftp mget_总结三种Shell脚本编程中避免SFTP输入密码的方法

最近编程中用到sftp上传文件,且需要用crontab预设定时上传事件。而sftp不同于ftp,没有提供选项如 -i 可以将密码直接编码进程序。使用sftp指令,会自动请求用户输入密码。总结一下可以避免sftp输入密码的三种方式:1. lftp方式LFTP是…

ad域不去用frs_Windows Server 2008搭建AD域控服务器 - 小王同学!

AD域安装过程安装DNS服务器一路下一步这里选安装到这里DNS服务器安装成功,可以在主页面看到我们安装的角色安装DNS服务器后我们需要重启服务器安装AD域服务新增AD域服务角色一路下一步——安装即可两条安装成功提示,重启服务器角色中选择AD域服务&#x…

IE下及标准浏览器下的图片旋转(二)—— Canvas(2)

文章过长,一篇无法保存 IE下及标准浏览器下的图片旋转(二)—— Canvas(1) 同样,作为最后,我们使用使用jquery也为canvas写个旋转demo: javascript: $(function () { …

大数据技术 思维导图

learn from 从0开始学大数据(极客时间)

python 管理windows客户端_在远程windows客户端上执行python脚本

我正在使用paramiko在远程windows服务器上执行命令。我能够执行dir之类的命令并提取输出,但是执行python脚本似乎失败了。不会引发错误消息。在下面是我的代码片段:def ssh_connect(ip,user,pwd):ssh paramiko.SSHClient()ssh.set_missing_host_key_pol…

日期范围 java_JavaJoDA时间-实现日期范围迭代器

这是一些让你开始的东西。你可能会想一想到底是要包容性还是排他性,等等。import org.joda.time.*;import java.util.*;class LocalDateRange implements Iterable{private final LocalDate start;private final LocalDate end;public LocalDateRange(LocalDate start,LocalDat…

win10win键无反应_台式电脑开机主机没反应怎么办 电脑开机主机没反应解决【详解】...

按了开机按钮后我的台式电脑主机还是没反应,怎么办呢?下面由小编给你做出详细的台式电脑开机主机没反应解方式介绍。(此文主要针对台式电脑做介绍)台式电脑开机主机没反应解方式一:拔掉电源线 然后重复的按开机键5-10下 进行放静电操作 然后再插上电源线…

hadoop 单机伪分布式安装步骤

文章目录1. 安装 Java2. 配置SSH无密码登录3. 下载 hadoop4. 配置环境变量5. 报错处理参考环境 Centos7参考:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.htmlhttps://blog.csdn.net/bingduanlbd/article/details/5187…

Eclipse 为jar包加入 Java Source和Javadoc(如何向Eclipse中导入源码和doc)

: 当我们在MyEclipse中加入Struct,只是引入了jar包,这时使用jar包里面的类,是无法看到源码的,看到的只是这样 是反编译后的一些东西 加入源码 那么如果看到源码呢,就需要导入了 找到这个类对应的jar包,下载…

ppt生成器_小米发布会ppt词云怎么做的

导语在幻灯片中使用文字云或者文字墙是一件非常酷的事情,之前我们看过的很多发布会PPT都有出现文字云设计。利用文字云工具就告别麻烦的排版,让ppt效果更专业,新颖小米发布会ppt 微词云我们先看下几种文字云案例罗振宇《时间的朋友》跨年演讲…

Java实验方法参数传递与递归_4.3类的结构之二:方法(return,重载,可变个数形参,值传递,递归)...

类的设计中,两个重要结构之二:方法* 方法:描述类应该具有的功能。* 比如:Math类:sqrt()\random()\ ..* Scanner类:nextXxx() ..* Arrays类:sort()\binarySearch()\toString()\equals()\..* * 1.…

钢琴块2电脑版_快陪练教师端电脑版下载_快陪练教师端pc版免费下载[在线教学]...

快陪练教师端电脑版是一款钢琴陪练教师的在线教学软件,快陪练教师端电脑版支持语音互动功能。快陪练教师端电脑版可以帮助老师在线教孩子学习钢琴,软件可以让用户清晰地看到学生弹钢琴时的指法,并及时为其纠正不正确的指法,它引入…

LeetCode 1105. 填充书架(DP)

文章目录1. 题目2. 解题1. 题目 附近的家居城促销,你买回了一直心仪的可调节书架,打算把自己的书都整理到新的书架上。 你把要摆放的书 books 都整理好,叠成一摞:从上往下,第 i 本书的厚度为 books[i][0]&#xff0c…

python字符串前面加上序号_简单了解python字符串前面加r,u的含义

这篇文章主要介绍了简单了解python字符串前面加r,u的含义,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下u/U:表示unicode字符串不是仅仅是针对中文, 可以针对任何的字符串,代表是对字符串进行unicod…

java 不重启部署_一篇文章带你搞定SpringBoot不重启项目实现修改静态资源

一、通过配置文件控制静态资源的热部署在配置文件 application.properties 中添加:#表示从这个默认不触发重启的目录中除去static目录spring.devtools.restart.excludeclasspath:/static/**或者使用:#表示将static目录加入到修改资源会重启的目录中来spr…

判断深度学习模型的稳定性_全自动搭建定制化深度学习模型

EasyDL服务自动化生成与部署EasyDL定制化训练和服务平台基于百度业界领先算法,旨在为用户量身定制业务专属AI模型。通过灵活的配置,用户可以将模型发布为公有云API、设备端离线SDK、本地服务器部署包、软硬一体方案等多种输出方式的AI服务。目前&#xf…

Android应用程序消息处理机制(Looper、Handler)分析

文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6817933 Android应用程序是通过消息来驱动的,系统为每一个应用程序维护一个消息队例,应用程序的主线程不断地从这个消息 队例中…

冒泡排序和选择排序区别_你以为只是简单的排序?(一)

一直在犹豫要不要写排序的文章,因为真的烂大街了。可是一旦细看,还真是很多值的思考的地方,所以还是选择记录一下以下完整代码,均可从这里获取https://github.com/Rain-Life/data-struct-by-go/tree/master/sort排序算法效率分析了…

java hash 分库分表_分库分表方案

摘自:Java技术栈一、数据库瓶颈不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少甚至无连接可用。接下来就可以…