ZooKeeper 源码分析(一):源码环境搭建

更新至 ZooKeeper 3.5.6 版本

环境

  • Java 1.8.0_221
  • Apache Maven 3.6.1
  • IntelliJ IDEA 2019.2.1

下载

apache/zookeeper – GitHub
克隆 branch-3.5.6 分支到本地:

git clone --branch branch-3.5.6 https://github.com/apache/zookeeper.git

构建

ZooKeeper 在 3.5.5 版本之后,项目构建由 Ant + Ivy 迁移至 Maven,可喜可贺!!!:clap::clap::clap:
构建:

mvn clean package -DskipTests

目录结构

ZooKeeper branch-3.5.6 分支,主要模块:

  • zookeeper-assembly 打包
  • zookeeper-client ZK 客户端
  • zookeeper-jute ZK 序列化,旧为 Hadoop record I/O
  • zookeeper-recipes ZK 提供的主选举、分布式锁和分布式队列实现
  • zookeeper-server
    ZK 服务