《Zookeeper分布式过程协同技术详解》之简介-分布式与Zookeeper简介
【常见的分布式架构场景面临的问题】
一般在主从架构中,主节点进程负责跟踪从节点的状态和任务的有效性,并分配任务到从节点。而这种架构中必须要解决的几个问题是,主节点崩溃、从节点崩溃、通信故障。
主节点崩溃:
如果主节点真的崩溃,那么需要有备选节点来接管这个主节点的工作,这里要怎么转移主节点崩溃之前的状态数据?如果主节点由于高负载或者网络延迟造成通信长时间未响应,导致从节点误以为这个主节点崩溃了,重新选出一个新的主节点,而此时旧的主节点又恢复了通信,一套系统里有多个主节点(脑裂),要怎么处理?
从节点失效:
主节点给从节点派发了任务,从节点完成任务后向主节点反馈完成的消息。但如果从节点任务过程中崩溃,那么该如何保证事务?
【Zookeeper是做什么的】
在分布式系统中协同多个任务,一个协作任务指的是一个包含多个进程的任务。这个协作任务,可以是为了协作也可以是为了管理竞争。对于在一台机器上的多个进程进行协同,与多个机器的多个进程的协同区别不大。在ZK之前也有很多系统采用分布式锁管理器或者分布式数据库来实现协作,Zookeeper为开发人员提供了一种新的选择。
当开发人员使用ZK进行开发时,开发人员设计的应用往往可以看成一组连接到ZK服务器的客户端,通过ZK提供的api连接到ZK服务器进行相应操作。ZK的客户端api功能包括:
保证强一致性、有序性和持久性;
实现通用的同步能力;
分布式环境下的并发处理机制
ZK用于管理协同的关键数据,不适合存储海量数据,最佳实践是将应用数据与协同数据分开处理,应用数据应用处理,协同数据交由ZK处理。ZK提供了一组核心操作,可以实现很多常见分布式应用的任务,对于实现什么样的协同任务,由开发人员决定。
分布式系统中的通信一般有两种选择,一种是直接进行网络通信,一种是读写某些共享存储。ZK使用后者,即共享存储模型来实现应用的协作与同步。
消息延迟、处理器性能带来的消息延迟、时钟偏移带来的错误这三个问题是分布式系统比较关心的关键问题。ZK简化了这些问题的处理。
《Zookeeper分布式过程协同技术详解》之简介-分布式与Zookeeper简介的更多相关文章
- ZooKeeper分布式过程协同技术详解1——ZooKeeper的概念和基础
简介 分布式系统和应用,不仅能提供更强的计算能力,还能为我们提供更好的容灾性和扩展性. ZooKeeper是Google的Chubby项目的开源实现,它曾经作为Hadoop的子项目,在大数据领域得到广 ...
- ZooKeeper分布式过程协同技术详解2——了解ZooKeeper
这个服务如何实现这些协作方面的原语? ZooKeeper基础
- Zookeeper分布式过程协同技术 - 部署及设置
Zookeeper分布式过程协同技术 - 部署及设置 Zookeeper支持单机模式.伪集群模式.集群模式三种部署方式.演示部署环境为CentOS.jdk版本为1.8.Zookeeper版本为3.4 ...
- Zookeeper分布式过程协同技术 - 概念及基础
Zookeeper分布式过程协同技术 - 概念及基础 Zookeeper是什么? Zookeeper是一种分布式过程协同技术,其所提供的客户端API功能强大,其中包括: 保障强一致性.有序性和持久性. ...
- Zookeeper分布式过程协同技术 - 群首选举
Zookeeper分布式过程协同技术 - 群首选举 群首概念 群首为集群中服务器选择出来的一个服务器,并被集群认可.设置群首目的在与对客户端所发起的状态变更请求进行排序,包括:create.setDa ...
- Zookeeper系列二:分布式架构详解、分布式技术详解、分布式事务
一.分布式架构详解 1.分布式发展历程 1.1 单点集中式 特点:App.DB.FileServer都部署在一台机器上.并且访问请求量较少 1.2 应用服务和数据服务拆分 特点:App.DB.Fi ...
- 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)
一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...
- 详解Twitter开源分布式自增ID算法snowflake(附演算验证过程)
详解Twitter开源分布式自增ID算法snowflake,附演算验证过程 2017年01月22日 14:44:40 url: http://blog.csdn.net/li396864285/art ...
- CDN学习笔记二(技术详解)
一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精华放上网.公诸同 ...
- CDN技术详解及实现原理
CDN技术详解 一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精 ...
随机推荐
- ORACLE备份脚本(4-RMAN1级增量备份)
创建目录 mkdir -p /bak/level1 mkdir -p /bak/arch1 chown -R oracle:oinstall /bak/ vi rmanlevel1.sh ...
- Software--电商平台系统--P1 需求分析
2018-01-11 13:58:43 电商平台 需求 1. 网站的页面展示 页面的布局: Product Catalog (商品目录浏览功能): 首页显示"置顶" 商品: ...
- C/C++:printf 函数格式化输出,用法详细记录
printf ( print format )函数是接触C/C++之后接触的第一个函数,它的功能除了输出hello world外,更重要的是进行格式化输出,比如输出整数的%d,输出小数的%f,%lf ...
- ant design vue的tooltip的宽度修改不生效
// 注意,vue 项目,style 标签不能加 scoped 选项,否则样式不生效 <a-tooltip placement="top" :overlayClassName ...
- node.js发送短信验证码(附带60秒倒计时插件)
推荐一个简单且功能齐全的发送短信验证码接口1.安装下载后的SDK只包含一个zhenzisms.js文件,直接导入到工程中即可使用.下载 2.用法引入模块 const zhenzismsClient = ...
- linux火狐添加flash插件
从官网上 adobe flash player 全版本通用安装 找到 linux 版本的 .gz 包, 复制下载链接 linux命令 su - cd /tmp wget -P /tmp https: ...
- Gstreamer 随笔
1. Gstreamer在Ubuntu上需要安装得全部库: gstreamer1.0-alsa - GStreamer plugin for ALSAgstreamer1.0-clutter-3.0 ...
- AX2012 使用HTML自定义popup内样式
在Class Box下新增方法如下: public client static DialogButton yesNoHTML( str _text, DialogButton _defaultButt ...
- HidController控件下载安装
用Delphi 或 C++ 开发 USB 接口时要用到的 HidController控件,如果你找不到去哪下载参考这里. 下载地址:https://sourceforge.net/projects/j ...
- 解决方案-Jmeter在CLI模式下无法生成html报告文件
出错场景: 在CLI模式下运行jmeter,将 jtl 结果转为 html 报告时,提示An error occurred: Data exporter "html" is una ...