美文网首页
分布式系统-9-释放一致性

分布式系统-9-释放一致性

作者: 王谙然 | 来源:发表于2017-01-11 12:09 被阅读247次

论文:TreadMarks

本节我们以 TreadMarks 为模型聊一聊释放一致性的是使用场景。

所谓释放一致性,是指在对资源操作前,先进行 acquire 操作即获取锁,其实是对某个标示位的值进行读取,若该资源正在被其他进程操作,该标示位为 0,当资源操作完成时会向所有副本发出更新通知,所有副本更新成功后将改标示位改成1,即释放锁(release),而在此之前,后面的进程只能轮询该标示位以获取锁状态。可见这种一致性模型每次只将修改的部分通知大家更新一下,分散了一致性的压力,数据竞争较小的地方会有比较理想的性能提升。

但是,每次通知大家更新的时候是需要等所有人都回复OK后才能释放锁。如果 A 修改后不通知 B 和 C,BC 在每次 acquire 之前先把自己的数据更新一下,这样可以将 A 修改同步的负载延迟到各个副本上,这种策略叫 Lazy Release Consistency(LRC)。

TreadMarks 为分布式共享式内存而设计,采用 LRC 策略保证一致性,比 RC 提高了性能,但需要将资源的操作分成一个个 interval:acquire 和 release 之间,可理解为逻辑上的时钟,称为 vector clock,它维护了各个进程的资源竞争的因果关系,通过合并操作可以得出每个 interval 结束时的资源状态,保证数据的一致性。

在分布式共享内存中还有一个性能杀手,False Sharing。由于内存的管理单位是页,进程 A 修改的页1的部分1,而进程 B 读取页1的部分2,传统的方式会先把进程B页1副本更新后再进行读取,而进程 A 的修改对进程 B 的读取没有影响,这显然是可以优化的。TreadMarks 的优化策略是在每个 interval 中创建 diff,也就是说,进程 A 写入页1部分1之前先创建页1的复制 twin,然后再去页1中修改,当进程B读取页1时,比较要读的部分在页1和twin有没有区别,若没有则直接读本地页1副本,如有区别则创建创建 diff。根据 vector clock 在时间上因果关系推算出当前进程应该读到那个版本的diff,如此一来,将单一的数据页同步转化成状态的叠加,可以有效降低 False Sharing 的性能损耗,当然需要更多的空间存 diff,用空间换时间。

没有十全十美的解决方案,只有适合不同场景的平衡取舍,由于分布式内存资源竞争概率远小于非竞争的情况,所以在在竞争同步,创建 diff 的策略上采取 lazy 的方式。反过来说,如果内存竞争的情况高于非竞争的情况,这种处理方式反而会使内存的使用效率降低,比如单机。

相关文章

  • 分布式系统-9-释放一致性

    论文:TreadMarks 本节我们以 TreadMarks 为模型聊一聊释放一致性的是使用场景。 所谓释放一致性...

  • 区块链技术(P3)算法的探索

    分布式系统的一致性问题 区块链作为一个分布式系统,首先碰到的问题就是一致性的保障。 在分布式系统中,一致性是指对于...

  • 区块链学习之分布式系统核心问题(四)

    区块链系统首先是一个分布式系统,分布式系统的核心问题包括一致性、共识 一致性问题 一致性问题是分布式领域最为基础也...

  • 深入浅析分布式系统的一致性模型

    本文是《如何学习分布式系统》中,关于一致性模型的相关介绍。 什么是一致性模型 一致性模型指的是分布式系统对外界承诺...

  • paxos算法

    paxos算法是为了解决分布式系统的一致性问题而生的。 分布式系统的一致性问题表现为在一个分布式系统中,所有的节点...

  • 分布式一致性算法

    分布式一致性算法 sschrodinger 2019/07/17 分布式一致性理论 CAP 理论 一个分布式系统不...

  • 云计算及分布式系统

    期末论文: 分布式系统的核心问题:1,一致性问题在分布式系统中,一致性(Consistency,早期也叫 Agre...

  • 图解比原链Tensority算法:如何让POW做到人工智能友好

    共识算法说起 区块链系统首先是分布式系统,而一致性是分布式系统的基础问题,要保证系统满足不同程度的一致性,则就要用...

  • 区块链开发:共识机制PoW #C06

    分布式一致性与共识 区块链的本质就是一个分布式系统,而分布式系统通常面临了几个问题:一致性问题,可终止性问题、合法...

  • 分布式事务解决方案(MQ)

    分布式系统的定义:一个用户的请求,由多个系统协同处理 思路:最终一致性 BASE理论(非实时一致性) 一.分布式事...

网友评论

      本文标题:分布式系统-9-释放一致性

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