• 第3关:Client连接及状态


    ZooKeeper状态以及状态的转换

    • 一个会话从NOT_CONNECTED状态开始,当客户端初始化后转换成CONNECTTING状态(箭头1)。

    • 当客服端与服务器断开连接,状态转换成CONNECTED状态(箭头2)。

    • 当客服端与服务器断开连接或者无法接收到服务器的响应时,就会转换回CONNECTING状态(箭头3)并尝试发现其他服务器。

    • 如果发现了另外一个服务器或者重连到原来的服务器,当服务器确认会话有效之后,状态回转换回CONNECTED状态。否则,转换成CLOSED状态。应用也可以显示地关闭会话(箭头45)。

     

    Clinet连接、断开Server

    可以通过zkCli简单的对ZooKeeper进行访问,数据创建,数据修改等操作。连接服务器命令行如下:

    zkCli.sh -server 127.0.0.1:2181

     

    说明:127.0.0.1是本地的IP,2181是访问端口,可以在配置文件中修改端口号。连接后会显示连接的详细信息,并进入可以操作的ZooKeeper命令终端(如下图所示)。

     

    如果在ZooKeeper服务器运行在standalone模式下,可以直接使用以下命令连接Server(不建议使用):

    zkCli.sh

     

    上述命令使用的端口号为2181,如果ZooKeeper端口号配置不是2181(此时clientPort=2182),将会拒绝连接,如下图所示:

     

    断开ClientServer连接,直接使用quit退出ZooKeeper命令行界面即可。

     

    编程要求

    本关任务是使用命令行,进行以下操作:

    • 修改ZooKeeper配置(安装目录为/opt/zookeeper-3.4.12),将端口改为2182

    • 添加preAllocSize配置项,值为300

    1. vi /opt/zookeeper-3.4.12/conf/zoo.cfg
    2. clientPort=2182
    3. preAllocSize=300

    • 日志输出路径修改为/opt/zookeeper-3.4.12(修改zkEnv.sh)。

    1. vi /opt/zookeeper-3.4.12/bin/zkEnv.sh
    2. ZOO_LOG_DIR="/opt/zookeeper-3.4.12"
    • 启动服务器,并通过zkCli.sh建立与Server的连接(启动服务器之前确保服务器处于关闭状态,可通过status查看服务器状态)。

    1. zkServer.sh start
    2. zkCli.sh -server 127.0.0.1:2182

  • 相关阅读:
    ReactNative踩坑及技术方案总结(2022 持续更新中)
    MySQL篇---第五篇
    Springboot服装服装销售管理系统毕业设计-附源码221801
    北京地标-自动驾驶高精度地图特征定位数据技术规范
    一文带你入门机器学习超参数优化算法
    PyQt5快速开发与实战 8.4 设置窗口背景 && 8.5 不规则窗口的显示
    旅游网站大数据分析 - 数据抓取
    windowsxp下的mysql集群技术
    Linux:非常实用的Linux命令
    Centos7 Yum安装PHP7.2
  • 原文地址:https://blog.csdn.net/qq_61604164/article/details/127904083