ZooKeeper 会话

作者: happyJared | 来源:发表于2019-10-26 08:44 被阅读0次

    Session 指的是 ZooKeeper 服务与客户端的会话。

    在 ZooKeeper 中,客户端连接,是指客户端和服务器之间的 TCP 长连接

    客户端启动的时候,首先会与服务建立一个 TCP 连接,从第一次连接建立开始,客户端会话的生命周期也开始了。**通过这个连接,客户端能够通过心跳检测与服务器保持有效的会话,也能够向 Zookeeper 服务器发送请求并接受响应,同时还能够通过该连接接收来自服务器的 Watch 事件通知。

    Session 的 sessionTimeout 配置值是用来设置客户端会话的超时时间。当由于服务压力太大、网络故障或是主动断开连接等等各种原因,导致客户端连接断开时,只要在 sessionTimeout 规定的时间内,客户端能重新连上集群中的任意服务器,那么之前创建的会话就仍然有效。

    在为客户端创建会话之前,服务端首先会为每个客户端都分配一个 sessionID。由于 sessionID 是 Zookeeper 会话的一个重要标识,许多与会话相关的运行机制都是基于这个 sessionID 的。因此,无论是哪台服务器为客户端分配的 sessionID,都务必保证全局唯一。

    相关文章

      网友评论

        本文标题:ZooKeeper 会话

        本文链接:https://www.haomeiwen.com/subject/rtpevctx.html