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


感谢阅读,祝君暴富!

相关推荐
叶北辰CHINA44 分钟前
nginx反向代理,负载均衡,HTTP配置简述(说人话)
linux·运维·nginx·http·云原生·https·负载均衡
极客先躯1 小时前
高级java每日一道面试题-2024年10月3日-分布式篇-分布式系统中的容错策略都有哪些?
java·分布式·版本控制·共识算法·超时重试·心跳检测·容错策略
不惑_1 小时前
在 Ubuntu 安装 Python3.7(没有弯路)
linux·运维·ubuntu
niu_sama1 小时前
仿RabbitMQ实现消息队列三种主题的调试及源码
分布式·rabbitmq
鸡c1 小时前
rabbitMq------客户端模块
分布式·rabbitmq·ruby
玉树临风江流儿2 小时前
Linux驱动开发(速记版)--设备模型
linux·驱动开发
Dylanioucn2 小时前
【分布式微服务云原生】探索Redis:数据结构的艺术与科学
数据结构·redis·分布式·缓存·中间件
杰哥在此3 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
路上^_^3 小时前
00_概览_kafka
分布式·kafka
枫叶丹45 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器