备战2022年Java秋招,程序员求职必看的ZooKeeper面试题

麒麟改bug

共 1419字,需浏览 3分钟

 · 2022-06-26

前言

大公司面试特别喜欢问 Zookeeper,因为 Zookeeper 确实是足够的优秀,比如他的 Paxos 算法,Zab 协议,Leader 选举策略,分布式锁等都是大厂面试的高频考点。我们不仅需要熟悉使用 Zookeeper,更要了解他的底层原理,这样不论是工作还是学习都是游刃有余。

1.ZooKeeper 面试题?

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

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

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


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

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


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

1、顺序一致性

2、原子性

3、单一视图

4、可靠性

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


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

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

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

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


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

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

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

zookeeper 最新的 zxid。

2.ZooKeeper提供了什么?

3.Zookeeper文件系统

4. ZAB协议?

5. 四种类型的数据节点 Znode

6. Zookeeper Watcher 机制 -- 数据变更通知

7. 客户端注册Watcher实现

8. 服务端处理Watcher实现

9. 客户端回调Watcher

10. ACL权限控制机制

11. Chroot特性

12. 会话管理

13. 服务器角色

14. Zookeeper 下 Server工作状态

15. 数据同步

16. zookeeper是如何保证事务的顺序一致性的?

17. 分布式集群中为什么会有Master?

18. zk节点宕机如何处理?

19. zookeeper负载均衡和nginx负载均衡区别

20. Zookeeper有哪几种几种部署模式?

21. 集群最少要几台机器,集群规则是怎样的?

22. 集群支持动态添加机器吗?

23. Zookeeper对节点的watch监听通知是永久的吗?为什么不是永久的?

24. Zookeeper的java客户端都有哪些?

25. chubby是什么,和zookeeper比你怎么看?

26. 说几个zookeeper常用的命令。

27. ZAB和Paxos算法的联系与区别?

28. Zookeeper的典型应用场景

ZooKeeper面试题(附答案解析)

获取方式↓↓↓

添加VX备注【616】即可免费获取

喜欢小编的文章可以点点关注!小编不定期的分享最新Java笔记和面试真题

【JAVA面试题专栏】

1、2022年Java后端面试手册,助力金三银四,吃透25个技术栈!
2、2022年金三银四,Java后端开发最全面试攻略,程序员求职必看!



浏览 9
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报