zookeeper 面试

1zookeeper 是什么?

是一个开源的分布式协调服务,它提供了一个具有高可用性和一致性的分布式环境,用于协调和管理分布式系统中的各种数据和状态。

2 zookeeper 都有哪些功能?

分布式锁:可以通过 ZooKeeper 实现分布式锁,用于控制并发访问。

配置管理:可以将配置信息存储在 ZooKeeper 中,并实时同步给各个节点。

命名服务:可以为分布式系统提供统一的命名服务,方便节点的查找和发现。

分布式队列:可以基于 ZooKeeper 实现分布式队列,用于实现消息的生产者和消费者模式。

集群管理:可以用于管理分布式集群中的成员关系、状态变化等。

心跳检测:可以通过 ZooKeeper 监听机制实现节点的心跳检测,用于检测节点的健康状态。

3 zookeeper 有几种部署模式?

单机模式:用于开发和测试环境,只有一台 ZooKeeper 服务器。

集群模式:生产环境常用的部署方式,多台 ZooKeeper 服务器组成一个集群,通过选举机制选择一台服务器作为主节点。

嵌套模式:将多个 ZooKeeper 集群组成一个更大的集群,用于管理多个分布式系统。

4 zookeeper 怎么保证主从节点的状态同步?

在集群模式下,ZooKeeper 会选举出一台服务器作为主节点,其他服务器为从节点。主节点负责处理客户端请求,并将写操作广播给其他从节点进行状态同步。

当主节点宕机时,从节点中的一台会被选举为新的主节点,保证集群的可用性和数据的一致性。

5集群中为什么要有主节点?

主节点的存在可以提供统一的协调和管理,例如分布式锁的竞争、配置的更新等。主节点负责处理集群的写操作,并确保其他从节点与主节点的数据保持一致。

6集群中有 3 台服务器,其中一个节点宕机,这个时候 zookeeper 还可以使用吗?

当集群中有一台服务器宕机时,ZooKeeper 仍然可以使用。因为在集群模式下,ZooKeeper 会自动选举新的主节点来代替宕机的节点,保证集群的正常运行和数据的一致性。

7说一下 zookeeper 的通知机制?

ZooKeeper 的通知机制是指客户端可以注册对某个节点的监听,一旦该节点发生变化(例如数据变更、节点删除等),ZooKeeper 会向客户端发送通知。客户端可以通过监听机制实时获取节点的变化,从而及时做出相应的处理。这种机制可以用于实现分布式锁的等待通知、配置的动态更新等场景。

相关推荐
Sonetto19997 分钟前
【Python】【面试凉经】Fastapi为什么Fast
python·面试·flask·fastapi·凉经
掘金-我是哪吒10 小时前
分布式微服务系统架构第132集:Python大模型,fastapi项目-Jeskson文档-微服务分布式系统架构
分布式·python·微服务·架构·系统架构
程序员学习随笔11 小时前
分布式 ID 生成的五种方法:优缺点与适用场景
分布式
冬瓜的编程笔记11 小时前
【八股战神篇】MySQL高频面试题
数据库·mysql·面试
hello1114-11 小时前
Redis学习打卡-Day3-分布式ID生成策略、分布式锁
redis·分布式·学习
独行soc12 小时前
2025年渗透测试面试题总结-百度面经(题目+回答)
运维·开发语言·经验分享·学习·面试·渗透测试·php
Paraverse_徐志斌12 小时前
基于 Zookeeper 部署 Kafka 集群
ubuntu·zookeeper·kafka·消息队列
掘金-我是哪吒12 小时前
分布式微服务系统架构第129集:redis安装部署文档
redis·分布式·微服务·架构·系统架构
编程、小哥哥13 小时前
Java大厂面试:从Web框架到微服务技术的场景化提问与解析
java·spring boot·微服务·面试·技术栈·数据库设计·分布式系统
计算机毕设定制辅导-无忧学长13 小时前
RabbitMQ 消息模式实战:从简单队列到复杂路由(一)
分布式·rabbitmq·ruby