前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >秋招面试题系列- - -Java工程师(十)

秋招面试题系列- - -Java工程师(十)

作者头像
用户10216580
发布2022-12-06 14:17:06
2090
发布2022-12-06 14:17:06
举报
文章被收录于专栏:一叶知秋一叶知秋

 前言:七月末八月初的时候,秋招正式打响,公司会放出大量的全职和实习岗位。为了帮助秋招的小伙伴们,学长这里整理了一系列的秋招面试题给大家,所以小伙伴们不用太过焦虑,相信你们一定能超常发挥,收到心仪公司的Offer~~ 内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Spring、Spring Boot、Spring Cloud、RabbitMQ、Kafka、Linux等技术栈

目录

ZooKeeper面试题

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

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

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

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

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

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


ZooKeeper面试题

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

Zookeeper本身也是集群,推荐配置不少于 3个服务器。Zookeeper自身也要保证当一个节点宕机时,其他节点会继续提供服务。

如果是一个 Follower宕机,还有 2台服务器提供访问,因为 Zookeeper上的数据是有多个副本的,数据并不会丢失;

如果是一个 Leader宕机,Zookeeper会选举出新的 Leader。

ZK集群的机制是只要超过半数的节点正常,集群就能正常提供服务。只有在 ZK节点挂得太多,只剩一半或不到一半节点能工作,集群才失效。

所以

3个节点的 cluster可以挂掉 1个节点(leader可以得到 2票>1.5)

2个节点的 cluster就不能挂掉任何 1个节点了(leader可以得到 1票

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

zk的负载均衡是可以调控,nginx只是能调权重,其他需要可控的都需要自己写插件;但是 nginx的吞吐量比 zk大很多,应该说按业务选择用哪种方式。

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

部署模式:单机模式、伪集群模式、集群模式。

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

集群规则为 2N+1台,N>0,即 3台。

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

其实就是水平扩容了,Zookeeper在这方面不太好。两种方式:

全部重启:关闭所有 Zookeeper服务,修改配置之后启动。不影响之前客户端的会话。

逐个重启:在过半存活即可用的原则下,一台机器重启不影响整个集群对外提供服务。这是比较常用的方式。

3.5版本开始支持动态扩容。

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

不是。官方声明:一个 Watch事件是一个一次性的触发器,当被设置了 Watch的数据发生了改变的时候,则服务器将这个改变发送给设置了 Watch的客户端,以便通知它们。

为什么不是永久的,举个例子,如果服务端变动频繁,而监听的客户端很多情况下,每次变动都要通知到所有的客户端,给网络和服务器造成很大压力。

一般是客户端执行 getData(“/节点 A”,true),如果节点 A发生了变更或删除,客户端会得到它的 watch事件,但是在之后节点 A又发生了变更,而客户端又没有设置 watch事件,就不再给客户端发送。

在实际应用中,很多情况下,我们的客户端不需要知道服务端的每一次变动,我只要最新的数据即可。

本期分享到此为止,关注博主不迷路,叶秋学长带你上高速~~

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ZooKeeper面试题
    • 18. zk节点宕机如何处理?
      • 19. zookeeper负载均衡和 nginx负载均衡区别
        • 20. Zookeeper有哪几种几种部署模式?
          • 21.集群最少要几台机器,集群规则是怎样的?
            • 22.集群支持动态添加机器吗?
              • 23. Zookeeper对节点的watch监听通知是永久的吗?为什么不是永久的?
              相关产品与服务
              负载均衡
              负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档