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,将数据文件和日志文件存放在不同的位置


感谢阅读,祝君暴富!

相关推荐
_dindong10 小时前
Linux网络编程:结合内核数据结构详谈epoll的工作原理
linux·服务器·网络
了一梨10 小时前
在Ubuntu中配置适配泰山派的交叉编译环境
linux·c语言·ubuntu
buyutang_10 小时前
Linux网络编程:Socket套接字编程概念及常用API接口介绍
linux·服务器·网络·tcp/ip
杨云龙UP10 小时前
从0搭建Oracle ODA NFS异地备份:从YUM源到RMAN定时任务的全流程
linux·运维·数据库·oracle
DN金猿10 小时前
恢复 Linux 上误删除的文件
linux·运维·服务器
远瞻。11 小时前
【环境配置】Ubuntu系统安装cuda
linux·运维·ubuntu
kyle~11 小时前
Linux---<unistd.h>类Unix系统编程核心头文件
linux·运维·unix
python百炼成钢12 小时前
55.Linux ADC框架(IIO续)
linux·运维·服务器·驱动开发
祎直向前12 小时前
重装Ubuntu之后重连VSCode
linux·vscode·ubuntu
buyutang_12 小时前
Linux 网络编程:深度理解网络字节序与主机字节序、大端字节序与小端字节序
linux·运维·网络