绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
修改
暗淡了乌云 栈主 2019-12-20 10:52:07
deeply 提问:如何写raft的测试用例? 怎么写出完备的测试用例证明自己实现的raft可靠可用?

(1)Raft算法(state machine)的正确性,可以考虑直接移植etcd raft模块的全部unit test cases(https://github.com/etcd-io/etcd/tree/master/raft),这是当前可见的为完备的raft算法测试用例集,所以pingcap的raft-rs(etcd raft的rust版)和 @我做分布式系统 的dragonboat都移植了这部分case; (2)线性一致性(linearizable):可以使用jepsen测试raft实现在各种异常(网络分区,宕机、hang等)情况是否满足线性一致性,仓库里面有很多的例子,照葫芦画瓢写一个也不难(还是很恶心的,毕竟只能用closure写),例如etcd、tidb、logcabin等等,详细的可以参考jepsen作者的文章:https://jepsen.io/analyses (3)更进一步的可能就是Chaos Engineering,给整个系统注入各种异常,看系统的表现,大的公司都有实践,其中开源的可以参考etcd的function test和dragonboat的Monkey Testing部分

展开
分享好友

分享这个小栈给你的朋友们,一起进步吧。

创建新的小栈
分布式存储笔记
创建时间:2019-12-13 16:59:52 分享
分布式与存储技术
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

栈主、嘉宾

查看更多
  • 暗淡了乌云
    栈主

小栈成员

查看更多
  • bluetooth
  • 栈栈
  • ?
  • R-B
特邀嘉宾

亲爱的$mastername栈主,

作为我们尊贵的VIP,您可以免费邀请人脉圈的任何人加入小栈,与您共同建设、管理$stackname小栈,为您站场,期待您的小栈聚集各路大牛

⚠️注意事项:

1.被邀请嘉宾与您同享小栈部分权益,可共同活跃、管理小栈内用户;

2.嘉宾可在24小时之内通过下一步给到的链接注册登录,过期失效;

3.为大程度保护您小栈的隐私性,请在安全的环境下发给可信任的用户;

4.链接仅可单人单次使用;

5.目前多可邀请9位嘉宾入驻。

戳我,来吐槽~
修改小栈
修改封面
小栈名称
小栈简介
小栈售价
免费小栈仅享有一次修改为付费的机会,直接修改价格即可;
修改为【付费】后不可再次修改为【免费】,请谨慎操作。
取消 确定

您可以在此修改小栈的图像和简介,如果您是免费小栈,可享受仅1次修改未收费小栈的机会