通过心跳的崩溃容错

问题描述

我在理论上得到了崩溃容错 (CTF) 的概念。 CTF 用于保证即使领导服务器崩溃,系统仍在运行。 我需要实现分布式系统(聊天应用程序),还需要实现崩溃容错。为此,我必须使用所谓的“心跳”来检查领导服务器是否仍然“活着”。

我的问题是,是否有人可以向我展示一个很好的代码示例来实现这种心跳?

解决方法

心跳机制的适用性取决于集群的大小或您手头的典型用例/部署场景。

许多基于共识的算法都依赖于心跳来决定领导者或领导者服务器的状态。

对于小集群,可以参考raft算法,从leader服务器向follower发送心跳,也可以使用leader选举机制,以防leader崩溃。

对于大型集群,心跳机制可能无法扩展,因此故障检测器以及基于八卦的传播协议是首选,可以参考。

很少参考: https://raft.github.io/,https://github.com/topics/gossip-protocol

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...