• 读《分布式一致性原理》会话


    会话状态

    在zookeeper客户端与服务端成功完成连接创建后,就建立了一个会话。zookeeper会在整个运行期间的生命周期中,会在不同

    的会话状态间进行切换,这些状态一般,这些状态一般可以分为CONNECTING,CONNECTED,RECONNECTING,RECONNECTED

    和CLOSED。

    一旦客户端开始创建Zookeeper对象,那么客户端状态就会变成CONNECTING,同时客户端开始从上述服务器地址列表中捉个选取IP

    进行网络连接,直到成功连接上服务器然后将客户端状态变更为CONNECTED。

    通常情况下伴随着网络闪断或是其他原因,客户端与服务器之间的连接会出现断开情况。一旦碰到这种情况,zookeeper客户端会自动进行

    重连操作。同时客户端的状态会变成CONNECTING。直到重新连接上服务端后,状态变为CONNECTED。

    另外如果出现会话超时,权限检查失败或则客户端主动退出程序等情况,那么客户端的状态会变为CLOSED

    会话创建

    Session是zookeeper中的会话实体,代表了一个客户端会话,包括以下4个属性。

     

    服务器的角色介绍

     Leader

    Leader服务器是整个zookeeper集群工作机制的核心,其主要工作有以下两个

    • 事务请求的唯一调度和处理这,保证集群事务处理的顺序性。
    • 集群内部各服务器的调度者

    Follower

    Follower服务器时zookeeper集群状态的跟随者,其主要工作有一下三个。

    • 处理客户端非事务请求,转发事务请求给Leader服务器。
    • 参与事务请求Proosal的投票
    • 参与Leader选举投票

     

    Oberver

    Oberver是zookeeper引入的全新的服务器角色。observer服务器在工作原理上和Follower基本是一致的。

    对非事务请求,都可以进行独立的处理,对于事务请求则会转发给leader服务器。

    和follower的区别是不参与投票,包括事务请求Proposal的投票和Leader选举投票。

  • 相关阅读:
    算法:javascript截取字符串
    【转】解决memcached启动失败
    Ubuntu 16.04 安装 Apache, MySQL, PHP7
    phpstorm2016.3+xdebug调试
    (转)微信开发连接SAE数据库
    php图片上传服务器
    大数据整体市场规模达1000亿,金融、政务等行业应用占据七成份额
    “AI智客计划”
    人工智能 :眼纹识别技术大显神通,一眼认出你
    AI 芯片,是金山还是泡沫?
  • 原文地址:https://www.cnblogs.com/duan2/p/9124077.html
Copyright © 2020-2023  润新知