最近工作中讨论到了Raft协议相关的一些问题,正好之前读过多次Raft协议的那paper,所以趁着讨论做一次总结整理。 我会将Raft协议拆成四个部分去总结: 算法基础 选举和日志复制 安全性 节点变更 这是第一篇:《解读Raft(一 算法基础)》 什么是RAFT 分布式系统除了提升整个体统的性能外 ...
分类:
其他好文 时间:
2020-04-30 18:59:10
阅读次数:
107
1 简介 本文将简单回顾传统数据库高可用的实现方式,并详细介绍巨杉分布式数据库的高可用实现。通过对本文的阅读,小伙伴们能够了解到传统数据库的高可用实现方式,包括;主备结构和集群架构;了解到大名鼎鼎的RAFT算法;然后最重要的,巨杉分布式数据库是如何实一致性的,如何保证在集群环境中实现数据不错不丢。 ...
分类:
数据库 时间:
2020-04-26 10:34:41
阅读次数:
82
集群:两个或两个以上的服务器组建而成 数据库集群-->读写功能 管理集群-->管理、故障恢复等功能 主节点,在一个分布式集群中负责对其他节点的协调和管理。主节点的存在,就可以保证其他节点的有序运行,以及数据库集群中的写入数据在每个节点上的一致性 分布式选举算法:基于序号选举的算法(比如Bully算法 ...
分类:
其他好文 时间:
2020-04-17 09:31:59
阅读次数:
58
搭建主从复制 简介 主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,mester以写为主,slaver以读为主。原则上是配从不配主。 搭建主从复制 新建三个文件夹:redis8000、redis8001、redis8002 将redis.conf复制到redis8000 ...
分类:
其他好文 时间:
2020-04-12 16:51:38
阅读次数:
64
上一篇讲述了什么是分布式一致性问题,以及它难在哪里,liveness和satefy问题,和FLP impossibility定理。有兴趣的童鞋可以看看 "分布式系统一致性问题与Raft算法(上)" 。 这一节主要介绍raft算法是如何解决分布式系统中一致性问题的。说起raft大家可能比较陌生,但zo ...
分类:
编程语言 时间:
2020-03-04 20:50:49
阅读次数:
58
最近在做MIT6.824的几个实验,真心觉得每一个做分布式相关开发的程序员都应该去刷一遍(裂墙推荐),肯定能够提高自己的技术认知水平,同时也非常感谢MIT能够把这么好的资源分享出来。 其中第二个实验,就是要基于raft算法,实现一个分布式一致性系统。但今天先不说raft算法,而是先讨论下什么是分布式 ...
分类:
编程语言 时间:
2020-02-28 21:06:49
阅读次数:
77
一、快速了解Raft算法Raft适用于一个管理日志一致性的协议,相比于Paxos协议Raft更易于理解和去实现它。为了提高理解性,Raft将一致性算法分为了几个部分,包括领导选取(leaderselection)、日志复制(logreplication)、安全(safety),并且使用了更强的一致性来减少了必须需要考虑的状态。相比Paxos,Raft算法理解起来更加直观。Raft算法将Server
分类:
编程语言 时间:
2020-02-16 01:41:48
阅读次数:
93
一、快速了解Raft算法 Raft 适用于一个管理日志一致性的协议,相比于 Paxos 协议 Raft 更易于理解和去实现它。 为了提高理解性,Raft 将一致性算法分为了几个部分,包括领导选取(leader selection)、日志复制(log replication)、安全(safety),并 ...
分类:
编程语言 时间:
2020-01-20 12:31:29
阅读次数:
72
一、etcd简介与应用场景 etcd 是一个分布式一致性k-v存储系统,可用于服务注册发现与共享配置,具有以下优点:1、简单 : 相比于晦涩难懂的paxos算法,etcd基于相对简单且易实现的raft算法实现一致性,并通过gRPC提供接口调用;2、安全:支持TLS通信,并可以针对不同的用户进行对ke ...
分类:
其他好文 时间:
2020-01-09 17:11:04
阅读次数:
76
原文地址 "Raft算法" 摘要 Raft是用于管理被复制的日志的共识算法。它与multi Paxos算法产生的效果相同,并且和Paxos算法一样高效。但是结构与Paxos不同。这使得Raft算法比Paxos算法更容易理解。也为构建实际系统提供了更好的基础。为了加强理解,Raft将几个关键元素分离, ...
分类:
编程语言 时间:
2020-01-04 16:53:39
阅读次数:
75