抛些问题出来,真正解释了这些问题才算理解了论文。:)

1. 什么是复制状态机
2. Raft vs Paxos
3. Raft的设计目标understandability,为达到设计目标在做设计时如何权衡
4. 有稳定leader时的行为:
    a) 如何确保不同副本之间的数据一致;
    b) 一条日志何时可以在状态机上执行;
5. 如何选举?
    在Leader切换时必须避免的: a) 双主(split brain) b) 长时间无主(选主是否可收敛) c) 丢失已确认日志 d) 主备数据不一致
6. split vote如何处理?
7. 如何选择超时时间?
8. 真的没可能同时存在两个Leader吗?如果有两个副本同时认为自己是Leader,对读写操作各会造成什么影响?
9. 对选举是否还有其他约束?为了达成什么目的。如果没有这个限制,bad case
10. 是否形成多数派的日志一定是已提交的日志?Raft的设计为什么会存在这个问题。
12. nop日志的作用,如果只考虑写操作,是否必须有nop日志?
13. Raft实现的性能瓶颈,如何解决? 

Raft论文的一些问题的更多相关文章

  1. 【转】分布式一致性算法:Raft 算法(Raft 论文翻译)

    编者按:这篇文章来自简书的一个位博主Jeffbond,读了好几遍,翻译的质量比较高,原文链接:分布式一致性算法:Raft 算法(Raft 论文翻译),版权一切归原译者. 同时,第6部分的集群成员变更读 ...

  2. raft 论文

    raft 论文,摘自  http://www.infoq.com/cn/articles/raft-paper raft动画:https://raft.github.io/ raft说明动画:

  3. Raft论文《 In Search of an Understandable Consensus Algorithm (Extended Version) 》研读

    Raft 论文研读 说明:本文为论文 < In Search of an Understandable Consensus Algorithm (Extended Version) > 的 ...

  4. Raft论文学习笔记

    先附上论文链接  https://pdos.csail.mit.edu/6.824/papers/raft-extended.pdf 最近在自学MIT的6.824分布式课程,找到两个比较好的githu ...

  5. 从raft论文出发

    介绍 Raft是一种为了管理复制日志的一致性算法.为了提升可理解性,Raft 将一致性算法分解成了几个关键模块,例如领导人选举.日志复制和安全性.同时它通过实施一个更强的一致性来减少需要考虑的状态的数 ...

  6. Raft论文概述

    介绍 Raft是一种为了管理复制日志的一致性算法.为了提升可理解性,Raft 将一致性算法分解成了几个关键模块,例如领导人选举.日志复制和安全性.同时它通过实施一个更强的一致性来减少需要考虑的状态的数 ...

  7. 分布式一致性算法:Raft 算法(论文翻译)

    Raft 算法是可以用来替代 Paxos 算法的分布式一致性算法,而且 raft 算法比 Paxos 算法更易懂且更容易实现.本文对 raft 论文进行翻译,希望能有助于读者更方便地理解 raft 的 ...

  8. Raft 为什么是更易理解的分布式一致性算法

    一致性问题可以算是分布式领域的一个圣殿级问题了,关于它的研究可以回溯到几十年前. 拜占庭将军问题 Leslie Lamport 在三十多年前发表的论文<拜占庭将军问题>(参考[1]). 拜 ...

  9. 比较下OceanBase的选举协议和Raft的选举协议的区别

    阿里技术大讲堂OceanBase专场中曾有专门一场讲座介绍OB自己实现的分布式选举算法:<分布式选举-破解数据库高可用性难题> 这里简单列一下这个选举算法和raft论文中提到的选举算法的区 ...

随机推荐

  1. [UML]UML系列——协作图(通信图)collaboration diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  2. Session为null无法访问

    我们在一般处理程序中需要访问Session为null 无法访问和操作 处理方案: 1.导入命名空间  System.Web.SessionState 2.实现IRequiresSessionState ...

  3. ajax请求的异步嵌套问题分析

    (本文章以as3代码为例) 问题的产生 在前端开发时,经常会使用到Ajax(Asynchronous Javascript And XML)请求向服务器查询信息(get)或交换数据(post),aja ...

  4. 作业一:创建个人技术博客、自我介绍、简单的C程序

    年9月14日中午12点: 一.主要内容  建个人技术博客(博客园 www.cnblogs.com) 本学期将通过写博客的方式提交作业,实际上,最终的目的是希望同学们能通过博客的形式记录我们整个学习过程 ...

  5. 除非 Windows Activation Service (WAS)和万维网发布服务(W3SVC)均处于运行状态,否则无法启动网站。目前,这两项服务均处于停止状态。

    win7 IIS 所有网站都停止了,启动提示: 除非 Windows Activation Service (WAS)和万维网发布服务(W3SVC)均处于运行状态,否则无法启动网站.目前,这两项服务均 ...

  6. 深入浅出OOP(一): 多态和继承(早期绑定/编译时多态)

    在本系列中,我们以CodeProject上比较火的OOP系列博客为主,进行OOP深入浅出展现. 无论作为软件设计的高手.或者菜鸟,对于架构设计而言,均需要多次重构.取舍,以有利于整个软件项目的健康构建 ...

  7. [BTS] MSDTC

    A message sent to adapter "WCF-SQL" on send port "SP.TMS.InsertDataToDB.WCFSQL" ...

  8. eclipse中gradle的使用

    安装gradle gradle默认的本地缓存库在c盘user目录下的.gradle文件夹下,安装好gradle后,可以添加环境变量GRADLE_USER_HOME自定义缓存位置. 安装eclipse插 ...

  9. Atitit.并发编程原理与概论 attilax总结

    Atitit.并发编程原理与概论 attilax总结 1. 并发一般涉及如下几个方面:2 2. 线程安全性 ( 2.2 原子性 2.3 加锁机制2 2.1. 线程封闭3.3.1Ad-hoc线程封闭 3 ...

  10. paip.基于navicate mysql的自动化报表工具总结

    paip.基于navicate mysql的自动化报表工具总结 需要对信用卡数据分类统计.显示一个饼图... 用EXCEL比较麻烦,一旦数据库变动就要重新导出..使用PHP代码吧,还是比较麻烦,最好是 ...