ZooKeeper 面试题?
ZooKeeper 是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群
中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用
的接口和性能高效、功能稳定的系统提供给用户。
分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名
服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。
Zookeeper 保证了如下分布式一致性特性:
第 50 页 共 485 页1、顺序一致性
2、原子性
3、单一视图
4、可靠性
5、实时性(最终一致性)
客户端的读请求可以被集群中的任意一台机器处理,如果读请求在节点上注册了
监听器,这个监听器也是由所连接的 zookeeper 机器来处理。对于写请求,这些
请求会同时发给其他 zookeeper 机器并且达成一致后,请求才会返回成功。因此,
随着 zookeeper 的集群机器增多,读请求的吞吐会提高但是写请求的吞吐会下降。
有序性是 zookeeper 中非常重要的一个特性,所有的更新都是全局有序的,每个
更新都有一个唯一的时间戳,这个时间戳称为 zxid(Zookeeper Transaction Id)。
而读请求只会相对于更新有序,也就是读请求的返回结果中会带有这个
zookeeper 最新的 zxid。
ZooKeeper 面试题?的更多相关文章
- ZooKeeper 面试题
高强度训练第二十一天总结 1. ZooKeeper 面试题 ZooKeeper 是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群 中各个节点的状态根据节点提交的反馈进行下一步合理操作.最终 ...
- 2019年面试官最喜欢问的28道ZooKeeper面试题
前言 ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务.它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护.域名服务.分布式同步.组服务等. ZooKeeper 的 ...
- 2020年最新ZooKeeper面试题(附答案)
2020年最新ZooKeeper面试题 1. ZooKeeper 是什么? ZooKeeper 是一个开源的分布式协调服务.它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zooke ...
- Zookeeper 面试题(持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- 29道Zookeeper面试题超详细(附答案)
原文链接 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件 ...
- 【Zookeeper系列】zookeeper面试题(转)
原文链接:https://segmentfault.com/a/1190000014479433 1.ZooKeeper是什么? ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是 ...
- Dubbo+zookeeper面试题补充
什么是分布式?什么是集群?主要区别 分布式是将一个服务分个部分,然后通过远程调用方式进行.远程调用框架RPC框架,spring cloud,dubbo.集群是将同一个服务的多个副本部署在不同的集群上, ...
- Zookeeper面试题
Zookeeper是什么框架 分布式的.开源的分布式应用程序协调服务,原本是Hadoop.HBase的一个重要组件.它为分布式应用提供一致性服务的软件,包括:配置维护.域名服务.分布式同步.组服务等. ...
- zookeeper 面试题2 比较乱
Zookeeper是什么框架分布式的.开源的分布式应用程序协调服务,原本是Hadoop.HBase的一个重要组件.它为分布式应用提供一致性服务的软件,包括:配置维护.域名服务.分布式同步.组服务等.应 ...
- zookeeper 面试题 有用
.zookeeper是什么框架? zookeeper是一个开源的分布式协调服务框架. 2.有哪些应用场景? 应用场景:分布式通知/协调.负载均衡.配置中心.分布式锁.分布式队列等. 3.使用什么协议? ...
随机推荐
- mongodb4.x 集群搭建
下载包 官网选择合适的操作系统版本下载tgz包 https://www.mongodb.com/download-center/community 部署结构 集群结构 典型的三分片Mongo集群如下图 ...
- 使用第三方插件pagination在页面实现分页功能
1.导入相应的js和css文件 2.在相应的页面映入pagination.js和pagination.css 3.将页面的分页代码替换为pagination动态生成的分页代码 4.编写js代码
- 私有化轻量级持续集成部署方案--07-私有NPM仓库-Verdaccio
提示:本系列笔记全部存在于 Github, 可以直接在 Github 查看全部笔记 对于个人来说,私有NPM仓库 作用性基本很小,但是对于企业,私有NPM仓库 可以保护代码暴露,具有很大的意义. 也是 ...
- 『无为则无心』Python面向对象 — 58、类方法和静态方法
目录 1.实例方法 2.类方法 (1)类方法特点 (2)类方法使用场景 3.静态方法 (1)静态方法特点 (2)静态方法使用场景 1.实例方法 实例方法既可以调用静态方法也可以调用类方法. # 定义一 ...
- 手把手教你vmware导入centos7虚拟机
安装vmware 安装vmware15:https://www.cnblogs.com/uncleyong/p/10740005.html 可能遇到的问题:VMware提示此主机支持Intel VT- ...
- mac上Navicat新建数据库3680错误解决办法
mac上Navicat新建数据库3680错误解决办法 1.在设置里关闭mysql,若不能关闭,在终端输入: sudo /usr/local/mysql/support-files/mysql.serv ...
- 一个简单的性能计数器:CodeTimer
public static class CodeTimer { public static void Initialize() { Process.GetCurrentProcess().Priori ...
- mysql-8.0.12 安装使用教程
Microsoft Windows [版本 10.0.15063] (c) 2017 Microsoft Corporation.保留所有权利. C:\WINDOWS\system32>D: D ...
- 矩池云上关于conda的一些使用技巧
关于源的加速和使用 bash /public/script/switch_conda_source.sh 输入想要切换的源前面的序号,然后按回车,源会自动切换. 当然这个地方需要注意的是如果遇到一些国 ...
- 表格的td行利用css显示...
默认超过指定长度以...显示, 鼠标放到文本上显示全 代码如下 .fh{ max-width:220px; word-wrap:break-word; text-overflow:ellipsis ...