第一次接触分布式架构,没有理论,没得套话,只有代码和坑!绝对干货,自带饮水!
1.zookeeper的单工程搭建
工欲善其事,必先利其器,先去把zookeeper下载了再说: zookeeper官方下载 选一个看得舒服的那个下了,然后解压
解压下来的文件名称应该是zookeeper-XXXX(版本号),但是为了后期的操作方便,我把它改成了zookeeper-5。然后在文件中新建两个文件夹:data 和 log,成品长这样:
将conf文件中的zoo_sample.cfg文件copy一份,改名为zoo.cfg,打开文件,将标记的代码dataDir、dataDirLog、clientPort找到并根据你的文件情况设置(为了好看,我这个已经把注释删掉了,你可以考虑copy)
#文件中自带的,如无特殊需求不需要更改
tickTime=2000
initLimit=10
syncLimit=5
#文件的数据存放地址,地址就是新建的data地址
dataDir=D:/zookeeper-5/data
#文件的日志存放地址,地址就是新建的log地址
dataDirLog=D:/zookeeper-5/log
#暴露的服务端口,不能是被占用端口
clientPort=2181
- tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
- dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
- dataLogDir:顾名思义就是 Zookeeper 保存日志文件的目录
- clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。(名词解释 摘抄于https://www.cnblogs.com/shanyou/p/3221990.html)
至此,单工程的zookeeper已经搭建完毕了!在bin目录下双击zkServer.cmd,启动项目。启动效果大概是这样:
------------------------------------------------------------------------雷区警戒线---------------------------------------------------------------------------
坑1:很多小伙计启动工程的时候它给你到处建data和log文件夹,有强迫症的实在受不了(我也是)
填坑:出现这个情况十有八九是因为填写data和log地址的时候都是直接目录文件夹复制粘贴,把文件夹复制的“D:\zookeeper-5\data”都给它改成“D:/zookeeper-5/data”,似乎它对“\”这个并不感冒。
--------------------------------------------------------------我不是系统的生产者,我只是bug的搬运工-----------------------------------
成品文件在:GitHub
上一篇文章:springBoot学习笔记(第二天)springboot整合mybatis
下一篇文章:SpringBoot学习笔记(第四天) zookeeper 伪分布式搭建