当前位置: 代码迷 >> 综合 >> Java 最常见的 208 道面试题:第十六模块答案 Zookeeper
  详细解决方案

Java 最常见的 208 道面试题:第十六模块答案 Zookeeper

热度:10   发布时间:2023-12-08 07:42:56.0

157. zookeeper 是什么?

zookeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 google chubby 的开源实现,是 hadoop 和 hbase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

158. zookeeper 都有哪些功能?

  • 集群管理:监控节点存活状态、运行请求等。

  • 主节点选举:主节点挂掉了之后可以从备用的节点开始新一轮选主,主节点选举说的就是这个选举的过程,使用 zookeeper 可以协助完成这个过程。

  • 分布式锁:zookeeper 提供两种锁:独占锁、共享锁。独占锁即一次只能有一个线程使用资源,共享锁是读锁共享,读写互斥,即可以有多线线程同时读同一个资源,如果要使用写锁也只能有一个线程使用。zookeeper可以对分布式锁进行控制。

  • 命名服务:在分布式系统中,通过使用命名服务,客户端应用能够根据指定名字来获取资源或服务的地址,提供者等信息。

159. zookeeper 有几种部署模式?

zookeeper 有三种部署模式:

  • 单机部署:一台集群上运行;

  • 集群部署:多台集群运行;

  • 伪集群部署:一台集群启动多个 zookeeper 实例运行。

160. zookeeper 怎么保证主