ZooKeeper 是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群

中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用

的接口和性能高效、功能稳定的系统提供给用户。

分布式应用程序可以基于 Zookeeper 实现诸如数据发布/订阅、负载均衡、命名

服务、分布式协调/通知、集群管理、Master 选举、分布式锁和分布式队列等功能。

Zookeeper 保证了如下分布式一致性特性

第 50 页 共 485 页1、顺序一致性

2、原子性

3、单一视图

4、可靠性

5、实时性(最终一致性)

客户端的读请求可以被集群中的任意一台机器处理,如果读请求在节点上注册了

监听器,这个监听器也是由所连接的 zookeeper 机器来处理。对于写请求,这些

请求会同时发给其他 zookeeper 机器并且达成一致后,请求才会返回成功。因此,

随着 zookeeper 的集群机器增多,读请求的吞吐会提高但是写请求的吞吐会下降。

有序性是 zookeeper 中非常重要的一个特性,所有的更新都是全局有序的,每个

更新都有一个唯一的时间戳,这个时间戳称为 zxid(Zookeeper Transaction Id)。

而读请求只会相对于更新有序,也就是读请求的返回结果中会带有这个

zookeeper 最新的 zxid。

ZooKeeper 面试题?的更多相关文章

  1. ZooKeeper 面试题

    高强度训练第二十一天总结 1. ZooKeeper 面试题 ZooKeeper 是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群 中各个节点的状态根据节点提交的反馈进行下一步合理操作.最终 ...

  2. 2019年面试官最喜欢问的28道ZooKeeper面试题

    前言 ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务.它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护.域名服务.分布式同步.组服务等. ZooKeeper 的 ...

  3. 2020年最新ZooKeeper面试题(附答案)

    2020年最新ZooKeeper面试题 1. ZooKeeper 是什么? ZooKeeper 是一个开源的分布式协调服务.它是一个为分布式应用提供一致性服务的软件,分布式应用程序可以基于 Zooke ...

  4. Zookeeper 面试题(持续更新、吐血推荐)

    文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...

  5. 29道Zookeeper面试题超详细(附答案)

    原文链接 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件 ...

  6. 【Zookeeper系列】zookeeper面试题(转)

    原文链接:https://segmentfault.com/a/1190000014479433 1.ZooKeeper是什么? ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是 ...

  7. Dubbo+zookeeper面试题补充

    什么是分布式?什么是集群?主要区别 分布式是将一个服务分个部分,然后通过远程调用方式进行.远程调用框架RPC框架,spring cloud,dubbo.集群是将同一个服务的多个副本部署在不同的集群上, ...

  8. Zookeeper面试题

    Zookeeper是什么框架 分布式的.开源的分布式应用程序协调服务,原本是Hadoop.HBase的一个重要组件.它为分布式应用提供一致性服务的软件,包括:配置维护.域名服务.分布式同步.组服务等. ...

  9. zookeeper 面试题2 比较乱

    Zookeeper是什么框架分布式的.开源的分布式应用程序协调服务,原本是Hadoop.HBase的一个重要组件.它为分布式应用提供一致性服务的软件,包括:配置维护.域名服务.分布式同步.组服务等.应 ...

  10. zookeeper 面试题 有用

    .zookeeper是什么框架? zookeeper是一个开源的分布式协调服务框架. 2.有哪些应用场景? 应用场景:分布式通知/协调.负载均衡.配置中心.分布式锁.分布式队列等. 3.使用什么协议? ...

随机推荐

  1. ShaderLab实现Vignette过场动画效果

    实现Vignette过场动画效果 postprocessing中有渐晕效果(Vignette),镜头可以由边缘往中间慢慢变黑: 但是我打包WebGL的时候提示我postprocessing,GPU不支 ...

  2. [旧][Android] Retrofit 源码分析之 Retrofit 对象

    备注 原发表于2016.04.27,资料已过时,仅作备份,谨慎参考 前言 在上一周学习了一下 Retrofit 的执行流程.接下来的文章要更为深入地学习 Retrofit 的各个类,这次我们先学习一下 ...

  3. Linux添加永久路由的方法

    通常我们使用route add -net添加临时路由.当系统重启,临时路由将丢失,重新配置路由带来了不必要的麻烦.可通过固化临时路由为永久路由的方法解决该问题. static-routes文件为路由固 ...

  4. containerd与kubernetes集成部署

    概念介绍 cri (Container runtime interface) cri is a containerd plugin implementation of Kubernetes conta ...

  5. 【C# IO 操作 】Big-endian 和 Little-endian 详解

    首先,认识字节(Byte),计算机中Byte意思为"字节",8个二进制位构成1个"字节(Byte)",即1Byte=8bit,字节是计算机处理数据的基本单位.所 ...

  6. 【C#反射】Assembly

    Assembly属性的应用 //获取当前执行代码的程序集 Assembly assem = Assembly.GetExecutingAssembly(); Console.WriteLine($&q ...

  7. Vue之获取DOM元素与更新DOM后事件的特殊情况

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. python面试_总结03_列表练习题

    1.列表练习题 完成下列列表相关的编程题,先运行下列的test函数,在完成每道题之后,都可以通过调用test函数检测所写函数对错. def test(got, expected): if got == ...

  9. 文件IO示例程序

    系统调用实现 open close write等等 /* #include <unistd.h> ssize_t read(int fd, void *buf, size_t count) ...

  10. selenium在爬虫中的使用

    一. selenium概述 1.1 定义 Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接调用浏览器,它支持所有主流的浏览器(包括Phantom ...