zookeeper-3.7.0源码环境搭建

参考:https://www.jianshu.com/p/6c0e17f71736

1、去GitHub下载源码 

我下载的是目前最新源码  3.7.0 

看之前的版本都需要用ant编译,这个没有build.xml 应该不

ps:也下载过之前的版本进行ant编译结果失败了就放弃了

2、导入进行maven编译

遇见错误和添加配置文件详见参考连接

搞了几天终于编译成功了,期间各种依赖找不到的报错

 

运行期间遇见错误:Caused by: java.lang.ClassNotFoundException: com.codahale.metrics.Reservoir

发现 zookeeper-3.7.0源码环境搭建_第1张图片

 

AppClassLoader里面URl 没有这个jar包,目前尚未解决这个问题

临时解决:把main方法迁到test包就可以 ***

zookeeper-3.7.0源码环境搭建_第2张图片

 

网络通信:

org.apache.zookeeper.server.NIOServerCnxn

org.apache.zookeeper.server.NIOServerCnxnFactory

org.apache.zookeeper.server.NettyServerCnxn


Leader选举:

接口:org.apache.zookeeper.server.quorum.Election

org.apache.zookeeper.server.quorum.FastLeaderElection

通信:org.apache.zookeeper.server.quorum.QuorumCnxManager
watcher机制:

org.apache.zookeeper.proto.WatcherEvent
数据与存储:
请求处理链:

 

你可能感兴趣的:(java基础学习)