学习分布式系统,这些术语你了解吗?

  对于刚进入区块链行业的小白同学来说,一切都显得比较陌生,很多概念性质的东西理解起来也比较吃力,本文和大家分享的是区块链分布式系统中常见的一些专业分类,一起来看看吧,希望对大家有所帮助。


1. Failure models失效模型 机器故障:当机器(节点)出现故障时,共识协议就用于解决机器可能出现的状态不一致问题。

  ·拜占庭容错:机器不仅可能出现故障,还可能会“撒谎”。

2. Network models网络模型:

  ·同步(Synchronous):我们不仅需要考虑机器会出现的各种故障问题,也要考虑网络通信的类型。在通信同步模型中,我们假设的是所有运行正常的节点(机器)都将在特定的时间内发送和接收消息。比如,你可以假定每条消息需要在5秒钟/分钟/小时内发送出去。

  ·异步(Asynchronous):这是同步的对立面。即便对于运行正常的节点(correct

  nodes)来说,消息通信延迟问题依旧可能存在。这种情况带来的结果是:你无法判定到底是节点出现故障了,还是节点没有故障,只是需要长时间才能回应。

  ·部分同步(Partially Synchronous):这种模型介于同步和异步之间。意思就是,存在一个上界(upper

  bound),但是这个上界并非被所有节点所知。我认为这种通信模型与实际的广域网通信(即互联网)非常相似。这只是我的个人观点哈,如果不同意见,欢迎反馈!

3. Message models消息模型:

  我将只考虑一种类型的消息模型:已验证的通信(authenticated

  communication),即各节点将对消息进行签名,任何人都可以验证来自某个其他节点的消息是真实可信的。

4. Guarantee models保证模型:

  这个命名有点奇怪,但我觉得这可以更好地描述该情况。

  ·非概率性(Non-probabilistic):如果某个共识协议是非概率性的,就意味着该协议可以保证安全性(没有概率分布),只要一定数量的节点运行正常即可。

  ·概率性(Probabilistic):如果某个共识协议是概率性的,那我们将自动引出一个概率分布(probability

  distribution)。通常来说,这种模型只能在1-ϵ的概率之间保证安全性,其中ϵ是系统设计人员选择的某个值。比如,一个概率性协议可能只保证99%的安全,即便一定数量的节点运行正常。记住这一点,这很重要!

  原文链接:https://www.kg.com/article/504509681390194688

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 分布式系统面临的第一个问题就是数据分布,即将数据均匀地分布到多个存储节点。另外,为了保证可靠性和可用性,需要将数据...
    olostin阅读 4,625评论 2 26
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,016评论 2 89
  • 本文内容翻译自《Designing Data-Intensive Applications》一书的第8章。 近几章...
    Jeffbond阅读 2,724评论 1 2
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,908评论 0 5
  • //联系人:石虎QQ: 1224614774昵称:嗡嘛呢叭咪哄 HTML-超文本标记语言XML-扩展标记语言共同特...
    石虎132阅读 277评论 0 14