• Zookeeper系列(二) Zookeeper配置说明


            在配置ZooKeeper配置文件时,有些参数是必需的,有些参数是可选的,这些必需的参数构成了Zookeeper配置文件的最低配置要求,如果需要对ZooKeeper进行更详细的配置,可以参考以下内容:

    1、最低配置

    以下是ZooKeeper配置文件中必需的最低配置参数:
    1)clientPort:监听客户端连接的接口
    2)dataDir:存储内存中数据快照的位置
    3)tickTime:基本事件单元,以毫秒为单位,用来控制心跳和超时,默认情况下最小的会话超时时间为两倍的tickTime
    注意:应该谨慎选择日志存放的位置,使用专用的日志存储设备可以大大提高系统的性能,如果将日志存储在比较繁忙的设备上,那么会很大程度上影响设备的性能。

    2、高级配置

    以下是ZooKeeper高级配置要求中可选的参数,用户可以根据以下参数更好地规范ZooKeeper的行为:

    1)dataLogDir

    该参数要求管理机器将日志写到【dataLogDir】指定的目录中,而不是【dataDir】所指定的目录,这允许使用一个专用的日志设备,避免了日志和快照的竞争,配置如下:
    # the location of log file
    dataLogDir=/home/hadoop/zookeeper/zkDataLog

    2)maxClientCnxns

    该参数限制连接到ZooKeeper的客户端的数量,并且限制并发连接的数量,它通过IP地址来区分不同的客户端。该参数设置可以阻止某些类别的Dos攻击,如果将它设置为0或不设置,则会取消对并发连接数的限制。配置如下:
    # set maxClientCnxns
    maxClientCnxns=100

    3)minSessionTimeout和maxSessionTimeout

    该参数表示会话的最小超时时间和最大超时时间,默认情况下最小会话超时时间为2倍的tickTime,最大会话超时间为20倍的tickTime。
    # set minSessionTimeout
    minSessionTimeout=1000
    # set maxSessionTimeout
    maxSessionTimeout=10000
    注意:如果会话超时时间设置太小的话,很可能会话刚刚建立就由于超时时间而不得不退出,一般情况下,不能将超时时间设置的比tickTime还小

    3、集群配置

    1)initLimit

    该参数表示允许follower(相对于leader(领导者)而言的“客户端”,简称“跟随者”)连接并同步到leader(领导者)的初始化连接时间,它是以tickTime的倍数来表示的,当连接时间超过设置倍数的tickTime时间时,则连接失败。

    2)syncLimit

    该参数表示leader(领导者)和follower(跟随者)之间发送消息时请求和应答的时间长度,如果follower(跟随者)在设置的时间内不能与leader(领导者)通信,那么此follower(跟随者)将会被丢弃。



  • 相关阅读:
    TCP 连接断连问题剖析
    libtool: link: you must specify an output file
    socket编程bind浮动ip
    epoll或者kqueue的原理是什么?
    推荐 30 款最好的免费项目管理软件
    QNX开发最完整图文教程(官方文档,非官方翻译)
    Android 4.X系列の界面设计中退出Android程序的代码
    APScheduler 定时任务系统
    给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。
    APSchenuler嵌入Django
  • 原文地址:https://www.cnblogs.com/yinghun/p/6084889.html
Copyright © 2020-2023  润新知