zookeeper源码学习系列之一

来源:互联网 发布:什么是行知教育 编辑:程序博客网 时间:2024/06/05 13:20

bin目录说明

  • zkServer.sh
  • zkServer.cmd
  • zkEnv.cmd

因为是在windows下进行学习,所以从zkServer.cmd入口开始吧!
zkServer.cmd:

setlocalcall "%~dp0zkEnv.cmd"set ZOOMAIN=org.apache.zookeeper.server.quorum.QuorumPeerMainset ZOO_LOG_FILE=zookeeper-%USERNAME%-server-%COMPUTERNAME%.logecho oncall %JAVA% "-Dzookeeper.admin.serverPort=8888" "-Dzookeeper.log.dir=%ZOO_LOG_DIR%" "-Dzookeeper.root.logger=%ZOO_LOG4J_PROP%" "-Dzookeeper.log.file=%ZOO_LOG_FILE%" "-XX:+HeapDumpOnOutOfMemoryError" "-XX:OnOutOfMemoryError=cmd /c taskkill /pid %%%%p /t /f" -cp "%CLASSPATH%" %ZOOMAIN% "%ZOOCFG%" %*endlocalpause

zkEnv.cmd:

set ZOOCFGDIR=%~dp0%..\confset ZOO_LOG_DIR=%~dp0%..\logsset ZOO_LOG4J_PROP=INFO,CONSOLEREM add the zoocfg dir to classpathset CLASSPATH=%ZOOCFGDIR%REM make it work in the releaseSET CLASSPATH=%~dp0..\*;%~dp0..\lib\*;%CLASSPATH%REM make it work for developersSET CLASSPATH=%~dp0..\build\classes;%~dp0..\build\lib\*;%CLASSPATH%set ZOOCFG=%ZOOCFGDIR%\zoo.cfgREM setup java environment variablesif not defined JAVA_HOME (  echo Error: JAVA_HOME is not set.  goto :eof)set JAVA_HOME=%JAVA_HOME:"=%if not exist "%JAVA_HOME%"\bin\java.exe (  echo Error: JAVA_HOME is incorrectly set.  goto :eof)set JAVA="%JAVA_HOME%"\bin\java

简单说明下:
1. setlocal到endlocal中间,说明此区间的环境变量只在这个范围内生效
2. %~dp0,获取当前文件的真实路径

好了,我们根据这个配置信息找到了zk的入口类:org.apache.zookeeper.server.quorum.QuorumPeerMain
参考上边的文件我们设置debug参数入下图:
这里写图片描述

0 0
原创粉丝点击