千家信息网

zk中选举Leader时的网络IO QuorumCnxManager是什么意思

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,本篇内容介绍了"zk中选举Leader时的网络IO QuorumCnxManager是什么意思"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些
千家信息网最后更新 2025年12月03日zk中选举Leader时的网络IO QuorumCnxManager是什么意思

本篇内容介绍了"zk中选举Leader时的网络IO QuorumCnxManager是什么意思"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

每台服务启动过程中,会启动一个QuorumCnxManager,负责各台服务器之间底层Leader选举过程中的网络通信

当集群中有服务器服务中断时,zk会重新选举leader

内部类

Message定义消息结构 包含了sid和内容ByteBuffer

ByteBuffer buffer;long sid;

InitialMessage

QuorumConnectionReqThread 发送连接请求类

QuorumConnectionReceiverThread

Listener 端口上的监听

SendWorker发送线程,从发送队列取出消息,发送给对应sid机器

一旦发现针对当前服务sid的消息队列为空,那么要从最近发送的消息中取出一条再次发送

为了保证服务端服务正常,zk能够保证重复消息进行正确处理

RecvWorker 接收消息的线程 不断从网络io中读取数据放入接收队列

类UML图

属性

RECV_CAPACITY

线程队列最大容量

SEND_CAPACITY

发送容量

PACKETMAXSIZE

包最大1024*512

observerCounter

观察者个数

QuorumPeer

集群数

mySid

ip地址

connectionExecutor

连接线程池服务执行者

authServer

已验证server

authLearner

学习者

connectionThreadCnt

处理连接的个数

recvQueue

接收队列

方法

初始化连接

public void initiateConnection(final Socket sock, final Long sid) {    try {        startConnection(sock, sid);    } catch (IOException e) {        LOG.error("Exception while connecting, id: {}, addr: {}, closing learner connection", new Object[]{sid, sock.getRemoteSocketAddress()}, e);        closeSocket(sock);        return;    }}接收连接public void receiveConnection(final Socket sock) {    DataInputStream din = null;    try {        din = new DataInputStream(new BufferedInputStream(sock.getInputStream()));        handleConnection(sock, din);    } catch (IOException e) {        LOG.error("Exception handling connection, addr: {}, closing server connection", sock.getRemoteSocketAddress());        closeSocket(sock);    }}

"zk中选举Leader时的网络IO QuorumCnxManager是什么意思"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

服务 消息 网络 选举 线程 队列 内容 过程 意思 最大 个数 容量 更多 服务器 知识 集群 保证 处理 学习 实用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 水务行业网络安全管理平台费用 俊雷网络技术 人口基础信息数据库 珠海专业软件开发要多少钱 客户机 服务器的英文写法 服务器管理器开机显示 小米k30连接不到数据库 forest专注森林中国服务器 user在网络安全中什么意思 企业软件开发优化建站 河南省驻马店网络安全管理 存储在数据库中的数据包括图像吗 学哪种数据库好找工作 计算机四级数据库技术考什么 远程数据库管理软件 服务器指的是在网络环境中 软件开发项目功能需求文档 基本科学指标数据库 音乐创作和软件开发哪个难 协同制造是充分利用网络技术 服务器安装需要的配置 csdn软件开发人员工资 云顶之奕手游服务器换区 hp服务器如何更换硬盘 个人服务器如何外网链接 中国科技与科技技术发展数据库 ROCKBOX下载软件开发 熊博士数据库矿场 中山服务器机箱销售 大学校园与网络安全
0