• 集群间通信的消息类型


    1. 数据同步型

    消息类型 发送方-->接收方 说明
    DIFF,13 Leader-->learner 通知Learner服务器,leader即将与其进行DIFF方式的数据同步
    TRUNC,14 Leader-->learner 触发Learner进行内存数据库的回滚操作
    SNAP,15 Leader-->learner leader即将与其进行”全量“数据同步
    UPTODATE,12 Leader-->learner 告诉Learner服务器已经完成了数据同步,可以开始对外提供服务了

    2. 服务器初始化型

    消息类型 发送方-->接收方 说明
    OBSERCERINFO,16 Observer-->Leader Observer在启动时发给Leader注册自己,消息中包含SID和自己已处理的最新ZXID
    FOLLOWERINFO,11 Follower-->Leader Followerr在启动时发给Leader注册自己,消息中包含SID和自己已处理的最新ZXID
    LEADERINFO,17 Leader-->Learner Learner连上leader后,leader发送leaderinfo,包含最新的EPOCH值
    ACKEPOCH,18 Learner-->Leader Learner在收到LEADERINFO后,将自己最新的ZXID和EPOCH发给leader
    NEWLEADER,19 Leader-->Learner 数据同步时,Leader向Learner发送一个阶段性的标识信息

    3. 请求处理型

    消息类型 发送方-->接收方 说明
    REQUEST,1 Learner-->Leader follower将事务请求已REQUEST协议形式转发给Leader进行处理
    PROPOSAL,2 Leader-->Follower leader将事务请求以PROPOSAL消息形式发给所有Follower进行事务日志的记录
    ACK,3 Follower-->Leader Follower记录完事务日志后,将ACK反馈给Leader
    COMMIT,4 Leader-->Follower leader告知所有Follower进行事务提交
    INFORM,8 Leader-->Observer 在commit阶段,Leader值需要发送一个COMMIT消息,Follower就可根据已有的事务日志完成提交了;但是对于Observer则需要发送完整的消息
    SYNC,7 Leader-->Learner 用于通知Learner已经完成了Sync操作

    4. 会话管理型

    消息类型 发送方-->接收方 说明
    PING,5 Leader-->Learner Leader定期向Learner发送PING请求,Learner将自己连接的客户端列表发送给Leader,由Leader逐个对这些客户端进行激活
    REVALIDATE,6 Learner-->Leader 客户端重连过程中,新的服务器需要向Leader发送改消息确认会话是否已超时
  • 相关阅读:
    【C# 代码小技巧】巧用 linq select 实现遍历集合返回元素 index
    [转载] redis 学习
    Html5 Canvas斗地主游戏
    K-近邻算法(KNN)
    Sql 把Xml字符串转换成一张表
    Asp.Net Mvc4分页,扩展HtmlHelper类
    SQL 分割字符串
    http://q.cnblogs.com/q/54251/
    读强化学习论文之MADDPG
    【回归】记Paddle强化学习训练营
  • 原文地址:https://www.cnblogs.com/Desneo/p/7611092.html
Copyright © 2020-2023  润新知