零基础一文读懂分布式系统( 三 )


\n

分布式系统有多种不同的架构 , 用以实现不同的处理信息的方法 。 假设系统中有十台计算机 , 一种架构是:我们把一个计算任务分成十份 , 让每台计算机独立处理一份任务 , 最后汇总它们的计算结果 , 作为输出 。

\n

还有另一种架构 , 就是让这十台计算机都去处理这一个计算任务 , 如果所有的计算机都正常工作 , 它们的计算结果应该是一样的 , 那么就把这个一致的计算结果作为输出 。 区块链就是这样的一种分布式系统 。

\n

很容易就能发现 , 这是一个「自找苦吃」的系统 , 它相当于把同样的工作做了十次 , 而且还需要额外增加不同计算机之间的沟通工作 。

\n

那为什么还需要这种系统?因为它可以让我们免除对中心化的那一台计算机 , 以及那台计算机背后的中心化的公司或组织的依赖 。 这样一来 , 既能避免单点故障或作恶 , 也能减少权力的集中及滥用 。

\n

一、分布式系统的理想目标

\n

区块链所属的分布式系统也被称为「复制状态机模型」(Replicated State Machine) , 它的目标很简单:系统内全部的计算机都同意某一个输出值 , 也就是指:系统内所有的节点 / 计算机都有相同的初始状态 , 在执行完一个事务后 , 所有的节点都有相同的最终状态  。

推荐阅读