分布式学习笔记(四)-分布式共识

什么是分布式共识

     在多个节点均可独自操作或者记录的情况下,使得所有节点针对某个状态达成一致的过程。通过共识机制,我们可以使得分布式系统中的多个节点的数据达成 一致。
     选主过程就是一个分布式共识问题,因为每个节点在选出主节点之前都可以认为自己会成为主节点,也就是说集群节点“存异”;而通过选举的过程选出主节点,让所有的节点都认可该主节点,这叫“求同”。由此可见,分布式共识的本质就是“存异求同”。所以,从本质上看,分布式选举问题,其实就是传统的分布式共识方法,主要是基于多数投票策略实现的。

分布式共识方法

  • Pow(Proof of Work,工作量证明)算法
    • 原理:是以每个节点或服务器的计算能力(即“算力”)来竞争记账权的机制,因此是一种使用工作量证明机制的共识算法。也就是说谁的计算力强、工作能力强,谁获得记账权的可能性就越大。
    • 优点:相对公平,有容错机制,完全去中心化,简单易懂,容易实现
    • 缺点:共识效率低,每秒完成交易量少,存在阻塞问题,资源浪费严重,交易服务费高
    • 应用场景:比特币等
  • PoS(Proof of Stake,权益证明)算法
                为了解决 PoW 算法的问题,引入了 PoS 算法
    • 原理: 由系统权益代替算力决定区块记账权的共识机制,拥有的权益越大则成为下一个区块生产者的概率也越大
    • 优点:消耗资源低,达成共识周期短,交易服务费低
    • 缺点:每秒完成交易量较低,容易被垄断,无法处理分叉链的情况
    • 应用场景:以太坊、点点币等
  • DPoS(Delegated Proof of Stake,委托权益证明)算法
            为了解决 PoS 算法的垄断问题,2014 年比特股(BitShares)的首席开发者丹尼尔 · 拉里 默(Dan Larimer)提出了委托权益证明法,也就是 DPoS 算法。
    • 原理:持有币的人可以进行投票选举,选举出一些节点作为代表来记账
    • 优点:能耗更低,每秒完成交易量高,无垄断情况,交易服务费低,更加安全  
    • 缺点:持币人投票的积极性并不高,故障问题解决效率低,易出现安全隐患
    • 应用场景:以太股、EOS等

一致性与共识的区别是什么

  • 一致性是指,分布式系统中的多个节点之间,给定一系列的操作,在约定协议的保障下,对外界呈现的数据或状态是一致的。
  • 共识是指,分布式系统中夺冠节点之间,彼此对某个状态达成一致结果的过程。

    一致性强调的是结果,共识强调的是达成一致的过程,共识算法是保障系统满足不同程度一致性的核心技术。

posted @ 2020-05-18 22:28  %hahahaha%  阅读(474)  评论(0编辑  收藏  举报