ZooKeeper配置文件zoo.cfg参数详解

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。

文章目录

  • [1. tickTime 心跳时间](#1. tickTime 心跳时间)
  • [2. initLimit 初始通信时限](#2. initLimit 初始通信时限)
  • [3. syncLimit 同步通信时限](#3. syncLimit 同步通信时限)
  • [4. dataDir 存储数据的目录](#4. dataDir 存储数据的目录)
  • [5. clientPort 端口号](#5. clientPort 端口号)
  • [6. maxClientCnxns 单个客户端最大连接数](#6. maxClientCnxns 单个客户端最大连接数)
  • [7. autopurge.snapRetainCount 保留文件的数量](#7. autopurge.snapRetainCount 保留文件的数量)
  • [8. autopurge.purgeInterval 自动清理快照文件和事务日志的频率](#8. autopurge.purgeInterval 自动清理快照文件和事务日志的频率)
  • [9. dataLogDir 存储日志的目录](#9. dataLogDir 存储日志的目录)

1. tickTime 心跳时间

客户端与服务器或者服务器与服务器之间维持心跳,即每隔tickTime时间就会发送一次心跳。

通过心跳不仅能够用来监听机器的工作状态,还可以通过心跳来控制Flower跟Leader的通信时间

简单说就是维持心跳的时间间隔,单位为毫秒

在zookeeper中所有的时间都以此时间为基础单位,进行整数倍配置

2. initLimit 初始通信时限

用于zookeeper集群,在多台zookeeper服务器中,节点选举出一个为Leader,其余为Follower

集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数

在最开始实现通信时,即初始化连接时,Leader会同步到所有Follower,这个同步的过程所用的时限即为初始通信时限。

此时限的值为tickTime的倍数,即initLimit=10时则表示时限为10*2000毫秒(20秒)

3. syncLimit 同步通信时限

集群中folower服务器(F)跟leader(L)服务器之间的请求和答应最多能容忍的心跳数

计算方式与initLimit相同,在运行时Leader通过心跳检测与Follower进行通信,syncLimit=5,如果超过syncLimit*tickTime即5*2000(10秒)时间还未收到响应,则认定该Follower宕机

4. dataDir 存储数据的目录

也称为snapshot快照文件目录

用来存放myid信息跟一些版本,日志,跟服务器唯一的ID信息等。

5. clientPort 端口号

客户端连接的接口,客户端连接zookeeper服务器的端口,zookeeper会监听这个端口,接收客户端的请求访问!

这个端口默认是2181

可在配置文件zoo.cfg中修改

6. maxClientCnxns 单个客户端最大连接数

允许连接的客户端数目,0为不限制,通过IP来区分不同的客户端

默认为60,表示单个客户端最大连接数为60个

7. autopurge.snapRetainCount 保留文件的数量

表示保留文件的数量,默认为3个,正常此参数被注释掉,未被启用

一般配合autopurge.purgeInterval使用

8. autopurge.purgeInterval 自动清理快照文件和事务日志的频率

表示自动清理快照文件和日志的频率,默认为0,表示不开启自动清理,单位为小时

9. dataLogDir 存储日志的目录

存放事务日志的文件夹

未指定时日志文件存放在dataDir目录中,一般创建dataDirdataLogDir,将数据文件和日志文件存放在不同的位置


感谢阅读,祝君暴富!

相关推荐
凹凸曼说我是怪兽y25 分钟前
Redis分布式锁详细实现演进与Redisson深度解析
数据库·redis·分布式
一叶之秋141226 分钟前
Linux基础IO
linux·运维·服务器
longerxin20204 小时前
在 Linux 上使用 SCP 将文件传输到 Windows(已开启 SSH)
linux·运维·ssh
王正南7 小时前
kali-linux 虚拟机连接安卓模拟器
android·linux·运维·虚拟机连接模拟器·安卓模拟器,linux虚拟机
吳所畏惧8 小时前
Linux环境/麒麟V10SP3下离线安装Redis、修改默认密码并设置Redis开机自启动
linux·运维·服务器·redis·中间件·架构·ssh
yueguangni8 小时前
sysstat 版本 10.1.5 是 CentOS 7 的默认版本,默认情况下确实不显示 %wait 字段。需要升级到新版sysstat
linux·运维·centos
萧曵 丶9 小时前
Linux 业务场景常用命令详解
linux·运维·服务器
AKAMAI10 小时前
分布式边缘推理正在改变一切
人工智能·分布式·云计算
豆是浪个10 小时前
Linux(Centos 7.6)命令详解:ps
linux·windows·centos
慧一居士10 小时前
xxl-job服务搭建,以及 springboot 集成xxl-job 项目完整步骤示例
分布式·中间件