美文网首页
zk源码解析-2018-11-23

zk源码解析-2018-11-23

作者: 冭朶d譕萘 | 来源:发表于2018-11-23 11:36 被阅读0次

    总所周知,zk是用java代码写的,那么启动肯定会调用java的类。那么它具体调用哪个类?两种方法:方法一:查看zkServer.cmd/zkServer.sh启动文件,里面有个关键的类org.apache.zookeeper.server.quorum.QuorumPeerMain.main 。方法二:jps查看zk进程,会看到调用QuorumPeerMain。

    配置文件里面是调用了QuorumPeerMain的main方法那么程序启动时他们到底干了什么事情,下面一起解密:

    >org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun 解析zoo.cfg文件内容加载到内存中 ,解析下面有个注释Start and schedule the the purge task  大概意思是开始定时执行任务这个不用管 点 cnxnFactory.start();这里有两个实现类一个是NettyServerCnxnFactory另外一个是NIOServerCnxnFactory  怎么知道具体实现哪个类? 返回到runFromConfig方法创建QuorumPeer对象有个createFactory方法 里面是实现NIOServerCnxnFactory这个类

    相关文章

      网友评论

          本文标题:zk源码解析-2018-11-23

          本文链接:https://www.haomeiwen.com/subject/xdpdqqtx.html