Etcd/Raft 原理问题之应用层收到Ready结构体后执行操作时的问题如何解决

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Etcd/Raft 原理问题之应用层收到Ready结构体后执行操作时的问题如何解决

问题一:应用层收到Ready结构体后,需要执行哪些操作?

应用层收到Ready结构体后,需要执行哪些操作?


参考回答:

应用层收到Ready结构体后,需要将其中的数据写入WAL持久化存储,然后更新这块数据到已持久化数据缓冲区,并通过Advance接口通知Raft库这些数据已经持久化。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/640695


问题二:Raft库中的Progress结构体是用来做什么的?

Raft库中的Progress结构体是用来做什么的?


参考回答:

1.维护follower节点的match、next索引,(0, Next)的日志已经发送给节点了,(0,Match]是节点的已经接收到的日志。

2.维护着follower节点当前的状态3中状态,不同的状态,其会采取不同的行为。

3.流量控制Inflights,避免follower节点超载


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/640696


问题三:Progress结构体的State字段有几种状态,分别代表什么?

Progress结构体的State字段有几种状态,分别代表什么?


参考回答:

Progress结构体的State字段有三种状态,分别是:

ProgressStateProbe:探测状态,用于试探follower的日志丢失位置。

ProgressStateReplicate:副本状态,表示正常接收副本数据的状态。

ProgressStateSnapshot:快照状态,表示正在向follower发送快照数据。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/640697


问题四:在Progress的Probe状态下,leader会如何操作?

在Progress的Probe状态下,leader会如何操作?


参考回答:

在Probe状态下,leader会试图继续往前追溯follower的日志从哪里开始丢失的。leader每次最多append一条日志,如果收到的回应中带有RejectHint信息,则回退Next索引以便下次重试。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/640698


问题五:ProgressTracker在etcd-raft中的作用是什么?

ProgressTracker在etcd-raft中的作用是什么?


参考回答:

ProgressTracker是Progress结构体的管理器,用于管理集群中所有follower节点的Progress信息。它简化了对follower节点进度的跟踪和处理逻辑。


关于本问题的更多回答可点击原文查看:

https://developer.aliyun.com/ask/640699

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
IDE Go 开发工具
etcd源码分析 - 5.【打通核心流程】EtcdServer消息的处理函数
在上一讲,我们梳理了`EtcdServer`的关键函数`processInternalRaftRequestOnce`里的四个细节。 其中,`wait.Wait`组件使用里,我们还遗留了一个细节实现,也就是请求的处理结果是怎么通过channel返回的。
118 0
etcd源码分析 - 5.【打通核心流程】EtcdServer消息的处理函数
|
4月前
|
SQL 测试技术 流计算
EMR Remote Shuffle Service实践问题之Leader节点变化导致的中断如何解决
EMR Remote Shuffle Service实践问题之Leader节点变化导致的中断如何解决
|
2月前
|
分布式计算 Hadoop Unix
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
51 1
|
4月前
【Azure Logic App】消费型逻辑应用在消费Service Bus时遇见消息并发速度慢,消息积压
【Azure Logic App】消费型逻辑应用在消费Service Bus时遇见消息并发速度慢,消息积压
|
5月前
|
索引
Etcd/Raft 原理问题之follower会进入StateReplicate状态时的问题如何解决
Etcd/Raft 原理问题之follower会进入StateReplicate状态时的问题如何解决
Etcd/Raft 原理问题之follower会进入StateReplicate状态时的问题如何解决
|
4月前
|
存储 调度 文件存储
分布式锁设计问题之当发生节点重启时发往该节点的请求会如何解决
分布式锁设计问题之当发生节点重启时发往该节点的请求会如何解决
|
7月前
|
存储 负载均衡 算法
ETCD(四)读请求处理过程
ETCD(四)读请求处理过程
194 0
|
7月前
|
负载均衡 API 索引
ETCD(五)写请求执行过程
ETCD(五)写请求执行过程
90 0
|
JSON Kubernetes 应用服务中间件
二进制 k8s 集群下线 master 组件流程分析和实践
二进制 k8s 集群下线 master 组件流程分析和实践
133 0
|
设计模式 Kubernetes 网络架构