分布式系统-共识协议

共识协议就是要让多个节点共同决定一个东西,这个东西可以是一个数字,可以是一个决定(yes or no),也可以是指令(字符串表示)。
在分布式系统中,把常见的错误模型分为两类,一类是非拜占庭错误,这个模型的意思是,节点可以不响应(意外关闭),但是不能发送错误(故意发送错误信息,诱导其他节点犯错),根据不响应之后的行为有分为两类,一是发生错误后永远不回来了,这个叫fail-stop,二是后面又恢复了,这个叫fail-recovery,默认我们使用fail-recovery模型。第二类是拜占庭错误模型,节点不仅可以不响应,也可以编造一些虚假信息来诱导其他节点作出错误决定。
分布式系统依赖网络环境,网络环境的错误是分布式系统中常见的错误,具体地,我们把网络环境的模型也抽象出三个错误类型。

  • 同步网络
    同步网络是指,网络的发送时间有上界。什么意思呢?是说发送一条消息,我们可以确定对方一定能收到,并且在一个固定的时间内。这个时间可以很长,一天,一年,甚至一亿年,这都没关系,但是它有个固定的上届。

  • 异步网络
    异步网络是指网络发送的时间没有上届。换句话说,我们不知道我们发送的消息,对方到底有没有收到。在这个模型下,只要有一个节点发生错误,不管是拜占庭还是非拜占庭错误,共识都无法达成。

  • 半同步网络
    这个是指网络的发送有时间上届,但是我们不知道这个上届是多少。也就是说我们不能在共识协议中使用超时机制。一般我们讨论的共识协议都是在同

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值