哈喽!大家好,我是小奇,一位不靠谱的程序员
小奇打算以轻松幽默的对话方式来分享一些技术,如果你觉得通过小奇的文章学到了东西,那就给小奇一个赞吧
文章持续更新

一、前言

这天是越来越热了,但是还是有很多线下面试,我虽然很不想去,但是没办法,谁让咱是打工人呢。。。(淦。。)

今天面试的地方距离小窝不远,我就骑上了我的小小自行车,不知不觉就来到了十字路口。

看着熙熙攘攘、人来人往的街头,我犹如走到了自己的人生十字路口,我不仅感叹,世界这么大竟然没有我小奇的容身之地,啊,苍天啊、大地啊

路人:前面那个骑自行车的人类,绿灯了,走不走啊,要作诗的话靠路边好不好。

我:走,肯定走,不走就迟到了。。。

终于来到了要面试的公司,嚯,这个公司挺气派,1、2、3、4、5、6、7、8、9,一共6层楼。。。

电梯门一开就有前台小姐姐接待,没有大家期待的打电话留门环节。。。

前台小姐姐:您好,您是?

我:我是来面试的。

前台小姐姐:您的联系人是?

我:范厨师

前台小姐姐:厨师?

我:不好意思,说串了,范厨师是我下午要去面试的饭馆的接待人,你们这里是马老师跟我联系的。

前台小姐姐:您还面试厨师呢?

我:没办法,谁让你们这个行业这么卷,还动不动就辞退人,我也得搞点副业呀。。。

前台小姐姐:有道理。。。先把这些表填一下吧。

嚯,给了我有半斤表,我是来面试的不是来练字的。

什么星座、什么血型、什么家庭、什么背景、什么来路、什么是快乐星。。。这都是些什么问题啊,我来面试的,怎么搞的我跟要收监一样。算了,写了两个小时终于写完了。

二、面试

面试官:小奇是吧,过来路上累了吧

我:路上不累,就是填了半斤的表有点累。。。咱们公司是不是纸多的用不完啊,用不完走的时候我拿点回家当手纸。

面试官:哈哈,你要是面试回答的好就让你随便拿

我:行,那你问吧。

面试官:我看你简历上精通zookeeper是吧

我:都是各个面试官之间吹捧的,其实还好啦,一般一般,世界第三。。。

三、ZAB协议

面试官:那你说一说什么是ZAB协议吧

我:“这啊八”协议是什么啊,我怎么没有听说过呢?

面试官:你不是精通zookeeper吗,zookeeper里面的zab协议

我:哦哦,那我明白了。

我:zab协议全称为:Zookeeper Atomic Broadcast(Zookeeper 原子广播协议)。
zab主要是为了解决分布式一致性而设计的一种实现方法。

面试官:解决哪方面一致性呢

我:解决数据方面的一致性问题,我们要保证Leader中的数据和follower中的数据保持一致。

面试官:怎么能够保证一致呢

我:在leader收到客户端发送的消息后他并没有先保存下来,而是先发送给follower节点,当follower节点有超过一半给他相应成功后,他才让follwer保存数据,然后自己也保存数据。

面试官:能不能形象一点呢,这个图我看不懂

我:看不懂出门左拐,慢走不送。。。

面试官:好,哎不对呀,我是面试官,你是来面试的呀,不应该我走呀

我:行,那你不走的话我就给你详细讲一下。

面试官:好

我:现在我们来角色扮演一下,我演皇上,你演太监好吗?

面试官:好

我:今天中午御膳房送来了我最爱吃的硬菜木须肉,这个时候我肯定不能直接吃呀,我肯定先给太监也就是你尝一下有没有毒,如果没有毒了我再吃对不对。

面试官:对,那为什么一定要半数以上的太监认为没有毒了你才能吃呢

我:笨啊,如果只有一个太监,那么他被收买了,我肯定就悬了,肯定得多个太监都说没毒才行。

面试官:对,那为什么不让所有的太监都尝一尝呢,半数的就够了吗

我:我有八百个太监,都尝一尝那我岂不是就没有饭吃了。。。

面试官:对对对,皇上英明

面试官:小伙子真厉害啊,让我身临其境的感受了一下原理

我:这不算啥,想感受等我入职了咱们接着角色扮演。

面试官:好,那你明天就来上班吧,不,现在就登基吧

我:这么突然吗。。。

四、总结

这里关于zookeeper还没有整理完毕,文章后面持续更新,建议收藏。

文章中涉及到的命令大家一定要像我一样每个都敲几遍,只有在敲的过程中才能发现自己对命令是否真正的掌握了。

如果觉得我的文章还不错的话就点个赞吧

面试官:ZAB协议是什么?的更多相关文章

  1. zookeeper 负载均衡 核心机制-实现原理 包含ZAB协议(滴滴,阿里面试)

    面试也经常问kafka的原理,以及zookeeper与kafka原理的区别:kafka 数据一致性-leader,follower机制与zookeeper的区别: zookeeper是如何实现负载均衡 ...

  2. zookeeper核心之ZAB协议就这么简单!

    背景 我们都知道 Zookeeper 是基于 ZAB 协议实现的,在介绍 ZAB 协议之前,先回顾一下 Zookeeper 的起源与发展. Zookeeper 究竟是在什么样的时代背景下被提出?为了解 ...

  3. 面试官的七种武器:Java篇

    起源 自己经历过的面试也不少了,互联网的.外企的,都有.总结一下这些面试的经验,发现面试官问的问题其实不外乎几个大类,玩不出太多新鲜玩意的.细细想来,面试官拥有以下七种武器.恰似古龙先生笔下的武侠世界 ...

  4. 漂亮回答面试官struts2的原理

    众所周知,Struts2是个非常优秀的开源框架,我们能用Struts2框架进行开发,同时能快速搭建好一个Struts2框架,但我们是否能把Struts2框架的工作原理用语言表达清楚,你表达的原理不需要 ...

  5. Tomcat相关面试题,看这篇就够了!保证能让面试官颤抖!

    Tomcat相关的面试题出场的几率并不高,正式因为如此,很多人忽略了对Tomcat相关技能的掌握. 这次整理了Tomcat相关的系统架构,介绍了Server.Service.Connector.Con ...

  6. 程序员过关斩将--面试官再问你Http请求过程,怼回去!

    菜菜哥,X总在产品部瞎指挥,作为程序媛的我都快撑不住了 不光你撑不住了,大家都要撑不住了,外行人指导内行人,呵呵 前天我偷偷的去面试了,结果挂了 出去转转其实是好事,面试官问你什么了? 他让我描述一个 ...

  7. (转)史上最全 40 道 Dubbo 面试题及答案,看完碾压面试官!

    背景:因为自己的简历写了dubbo,面试时候经常被问到.实际自己对dubbo的认识只停留在使用阶段,所以有必要好好补充下基础的理论知识. https://zhuanlan.zhihu.com/p/45 ...

  8. 【测试工程师面试】在BOSS直聘上和面试官的一问一答

    岗位描述: 信用卡核心系统功能测试,负责测试计划制定,测试设计,测试执行,测试进度掌控,自动化工具建设等工作.有责任心,执行力强,工作认真细致,逻辑思维强熟悉linux,oracle或者IBM大型机操 ...

  9. 史上最全 40 道 Dubbo 面试题及答案,看完碾压面试官

    想往高处走,怎么能不懂 Dubbo? Dubbo是国内最出名的分布式服务框架,也是 Java 程序员必备的必会的框架之一.Dubbo 更是中高级面试过程中经常会问的技术,无论你是否用过,你都必须熟悉. ...

随机推荐

  1. Solon 1.6.33 发布,更现代感的应用开发框架

    相对于 Spring Boot 和 Spring Cloud 的项目 启动快 5 - 10 倍 qps 高 2- 3 倍 运行时内存节省 1/3 ~ 1/2 打包可以缩小到 1/2 ~ 1/10(比如 ...

  2. ArcMap操作随记(1)

    1.用python代码,将属性表中属性进行合并 代码:'ID'+str(!FID!) 2.地类编码与地类的转换 以python为例 显示代码块(预逻辑脚本代码): def getType(value) ...

  3. 深入了解ReentrantLock中的公平锁和非公平锁的加锁机制

    ReentrantLock和synchronized一样都是实现线程同步,但是像比synchronized它更加灵活.强大.增加了轮询.超时.中断等高级功能,可以更加精细化的控制线程同步,它是基于AQ ...

  4. luoguP6624 [省选联考 2020 A 卷] 作业题(莫比乌斯反演,矩阵树定理)

    luoguP6624 [省选联考 2020 A 卷] 作业题(莫比乌斯反演,矩阵树定理) Luogu 题外话: Day2一题没切. 我是傻逼. 题解时间 某种意义上说刻在DNA里的柿子,大概是很多人学 ...

  5. SpringBoot的 Actuator 是做什么的?

    本质上,Actuator 通过启用 production-ready 功能使得 SpringBoot 应用程序变得更有生命力.这些功能允许我们对生产环境中的应用程序进行监视和管理. 集成 Spring ...

  6. 在 java 中 wait 和 sleep 方法的不同?

    最大的不同是在等待时 wait 会释放锁,而 sleep 一直持有锁.Wait 通常被用于线 程间交互,sleep 通常被用于暂停执行. 直接了解的深入一点吧: 在 Java 中线程的状态一共被分成  ...

  7. Xml 映射文件中,除了常见的 select|insert|updae|delete 标签之外,还有哪些标签?

    <resultMap>.<parameterMap>.<sql>.<include>. <selectKey>,加上动态 sql 的 9 个 ...

  8. Clickhouse 用户自定义外部函数

    写在前面 Clickhouse 从 21.11 版本开始,除了提供类似SqlServer.MySQL CREATE FUNCTION 的自定义函数之外,还有一个用户自定义函数(UDF),与其说是&qu ...

  9. Slog71_选取、上传和显示本地图片GET !(微信小程序之云开发-全栈时代3)

    ArthurSlog SLog-71 Year·1 Guangzhou·China Sep 12th 2018 ArthurSlog Page GitHub NPM Package Page 掘金主页 ...

  10. css布局基础总结

    前端css布局知识繁杂,实现方式多种多样.想写出高效.合理的布局,必须以深厚的css基础为前提.为了方便记忆和复习,将css布局要点记录如下.内容较多,应用方面说的不太详细,但都是很实用的点. 所谓布 ...