美文网首页区块链研习社今日头条
区块链 共识简介:一致性不可能与99.9可靠性(9)

区块链 共识简介:一致性不可能与99.9可靠性(9)

作者: 笑狮子 | 来源:发表于2018-03-27 00:01 被阅读0次

分布式的的基本瓶颈是什么?为什么分布式系统这么困难,人们还要孜孜不倦不倦地设计他们?搞一个巨大的中心化系统可能吗?FLP,CAP说的是些什么?

让多于一个节点的系统能够协同工作,需要满足两个条件,一是一致性,大家的力气往一处使,二是唯一性,每个节点都在干自己的活儿。唯一性的算法是一致性哈希表,这里我们不讨论,主要是我不太懂。:-)

分布式系统不可或缺,原因是可靠性和规模。集中的单一系统,无论其可靠性和处理能力多高,都是有限值。就可靠性而言,一个最简单的器件,其失效率大约在一个FIT(10的9次方分子一)。而简单路由器的失效率就已经达到了几百个FIT的量级。进一步提高可靠性的方法是系统备份,也就是用两个或者多个系统来承担任务,其中一个坏了不影响整体系统的可用性。而这两个或者三个互相备份的系统,他们之间给出的结果不一样怎么办?这就回到了一致性这个基本的命题。

我们从来没有见到任何系统保证100/100的可靠性,都是99.9,或者99.999,为什么呢?这和FLP有关。FLP是三个人姓的字母缩写,它论证了在异步的网络上,任何分布式一致性算法,面对仅仅一个节点时效时,都有算法不能结束的风险(一直达不成一致)。

这初听起来很让人绝望,但在工程精度范围内,有很多解决方案。例如,部署有同步时钟的网络(相对论告诉我们对不同观察者没有同步的时钟,但我们生活的低速世界,这至少暂时还不是问题),电信系统以前就是有同步时钟的,中国有国家授时系统。我们可以看见,这个时钟系统是中心化的,但是中心化和去中心化都是工具,如果中心化的时钟系统效果最好,为什么要拘泥于去中心化呢?

也可以或然地承诺系统的可靠性,比如5个9,9个9,甚至11个9。到这个精度,系统可靠时间已经远远超过了维修换代时间和人的自然寿命,可以安全使用了。

CAP的意思是说,分布系统不能同时满足 Consistency(一致性),Availability(可用性),Partition Tolerant(网络隔离容忍)。网络隔离会导致两个不一致的,互相不能通讯的中心,又叫脑裂。CAP的不可能性和FLP的不可能性一样,都在工程精度范围内可以解决。

以上FLP,CAP都给我们一点启发,就是网络与通讯是分布式系统的基本瓶颈。这也和直觉一致,分布式系统,就是用网络连接起来的很多个小的单一系统。

我们的社会也是一个很多人组成的分布式系统,需要一致性,唯一性和可靠性。需要中心化的节点,和分布式的系统。互相协同,才能达到系统效果最优。而沟通与通讯也是基本瓶颈。

附录 技术部分

Paxos是最为人知的分布式一致性协议,它就是一个不靠谱的议会(a part time parliment)。毫不意外,它无法处理拜占庭错误。如果有1/3的成员组织起来,就能够让一致性被影响。秘密社团只需要在1/3的议员里面,通过影响公众不注意的法案细节,就可以给他们自己谋巨大的利益,现在你相信有秘密社团了吗?。

相关文章

  • 区块链 共识简介:一致性不可能与99.9可靠性(9)

    分布式的的基本瓶颈是什么?为什么分布式系统这么困难,人们还要孜孜不倦不倦地设计他们?搞一个巨大的中心化系统可能吗?...

  • 共识机制

    共识机制是区块链技术的灵魂。 区块链共识机制的目标是使所有的诚实节点保存一致的区块链数据,同时满足2个性质:一致性...

  • 区块链共识算法比较

    区块链共识算法可以根据其容错类型、部署方式和一致性程度等多个维度加以分类。例如,根据容错类型,可以将区块链共识算法...

  • 区块链中的共识机制

    区块链解决了在不可信信道上传输可信信息、价值转移的问题,而共识机制解决了区块链如何在分布式场景下达成一致性的问题。...

  • 区块链是价值互联网!

    区块链解决了在不可信信道上传输可信信息、价值转移的问题,而共识机制解决了区块链如何在分布式场景下达成一致性的问题,...

  • 漫谈区块链共识机制

    共识机制是区块链的一个核心特征,是保证区块链系统在分布式架构下的一致性方案。目前主流的也有好多种共识算法:POW、...

  • 中秋与共识

    简介:由中秋佳节联想到的共识,区块链技术为什么需要共识机制来维护? 为什么区块链与互联网在共识上会产生显著不同的依...

  • 一个关于区块链入门学习项目

    对我而言,区块链的共识有以下两层含义: 1 维护和保持p2p网络节点状态信息的一致性 2 区块链技术的认知的一致性...

  • 区块链新型共识算法:Snowflake to Avalanche

    2018-08-09 知辉 juniway 区块链新型共识算法:Snowflake to Avalanche 简介...

  • 从0到1学习区块链4-共识机制

    什么是共识机制共识机制主要用来解决谁来构造区块(记账),以及如何维护全网数据一致性的问题,选择哪一个区块链作为公认...

网友评论

    本文标题:区块链 共识简介:一致性不可能与99.9可靠性(9)

    本文链接:https://www.haomeiwen.com/subject/oyliqftx.html