云计算百科
云计算领域专业知识百科平台

Leader、Follower、Observer 到底谁是老大?一篇讲透 Zookeeper 服务器角色

上周我帮一个朋友准备 Java 社招面试。他一脸自信:“Redis 我熟,MySQL 我行,Spring 全家桶没问题。”

结果面试官突然丢出一句:“那你说说 Zookeeper 服务器角色?”

他愣了三秒,说:“Leader 是老大,Follower 是小弟……Observer 是围观群众?”

面试官微微一笑。凉了。

今天我就用一个故事,把这个问题讲透。保证你下次面试,不是背概念,而是讲体系。我们主角就是Apache ZooKeeper。

把 ZooKeeper 想象成一个“动物王国议会”

想象一下:这是一个大型动物王国,所有重大决策(比如修水坝、迁徙路线)都必须集体确认。

为了保证国家稳定,他们设计了三种角色:

接下来我们一个个讲。

Leader:王国唯一的“国王”

在 ZooKeeper 集群中,Leader 是绝对核心。

1、事务请求的唯一调度和处理者

面试必考点:Leader 是事务请求的唯一调度和处理者,保证集群事务处理的顺序性。

什么意思?ZooKeeper 的写操作(create、setData、delete)都是事务请求。如果每个服务器都能随便处理写请求,顺序就乱了。所以设计成:所有事务请求必须由 Leader 统一调度。

流程大概是:

  • 客户端提交事务请求
  • Leader 生成 Proposal(提案
  • 赞(0)
    未经允许不得转载:网硕互联帮助中心 » Leader、Follower、Observer 到底谁是老大?一篇讲透 Zookeeper 服务器角色
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!