etcd raft 处理流程图系列2-transport

简介: etcd raft 处理流程图系列2-transport

本章给出了raftexample中使用的传输层代码,补全了上一节中传输层与raft节点(raft server和channel server)的交互细节。下图中流程的核心在于传输层中的streamRtpipelineRt,raft的传输层通过这两个roundtrip与其他节点交互,并通过streamReader读取来自其他节点的信息进行处理。streamHandler用于给msgAppV2Writerwriter提供连接,处理完请求之后将响应结果返回给handler(raft example中好像没有涉及streamHandler的处理)。


该模块中使用了大量channel,可以借鉴其思想和方式。

原图地址:transport

参考

etcd-raft 网络传输源码简析

目录
相关文章
|
存储 算法 开发工具
学习分享|Etcd/Raft 原理篇
本文是根据近期对 Etcd-Raft 的学习把自己的理解做个简单整理和分享。
|
存储
etcd raft 处理流程图系列1-raftexample
etcd raft 处理流程图系列1-raftexample
288 2
|
存储 算法 开发工具
Etcd/Raft 原理问题之Etcd-Raft是什么
Etcd/Raft 原理问题之Etcd-Raft是什么
249 2
|
监控 索引
Etcd中raft协议源码分析
以etcd或者docker中的raft协议为列子,来解析raft协议的实际落地 server通信 概述 server之前的消息传递并不是简单的request-response模型,而是读写分离模型, 即每两个server之间会建立两条链路,对于每一个server来说,一条链路专门用来发送数据,另一条链路专门用来接收数据. 在代码实现中,通过streamWriter发送数据,通过streamReader接收数据。
4108 0
|
网络协议
Etcd源码分析: 启动篇
启动 启动从源码 /etcdmain/main.go 中的main函数开始 func Main() { checkSupportArch() // 检查系统是否支持 if len(os.
7519 0
|
JavaScript
jquery,禁止冒泡和默认行为
如果在页面中重叠了多个元素,并且重叠的这些元素都绑定了同一个事件,那么就会出现冒泡问题。//HTML 页面//三个不同元素触发事件$('input').click(function () {alert('按钮被触发了!');});$('div').click(function () {alert('div 层被触发了!');});$(document).click(function () {alert('文档页面被触发了!');});注意:当我们点击文档的时候,只触发文档事件;当我们点击 div 层时,触发了 div 和文档两个;当我们点击按钮时,触发了按钮、div 和文档。
929 0
|
4天前
|
人工智能 定位技术 SEO
我学 GEO 第 15 天:终于知道AI GEO该如何做?
我是暴走的莉莉酱,边旅行边研究AI GEO的数字游民。专注普通人如何提升“AI可见度”——让AI在回答用户问题时准确识别、理解并推荐你。不讲玄学,只做可测、可调、可持续的GEO实践。
400 125
|
7天前
|
机器学习/深度学习 人工智能 调度
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
HappyHorse 1.1 是新一代视频生成大模型,全面升级动态表现力、角色一致性、指令遵循、视觉质感与音画协同能力。支持I2V/T2V/R2V三类生成,适配短剧、电商广告、品牌营销等场景,提供高质、流畅、可控的AI视频生产力。
682 4
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~