跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 什么是最终一致性,有点混淆,谢谢
未分類
15 5 月 2020

什么是最终一致性,有点混淆,谢谢

什么是最终一致性,有点混淆,谢谢

資深大佬 : ruandao 14

是指一个业务中,不同数据譬如下单和扣钱这两个不同的数据,随着时间推移达到一致(即下单和扣钱都执行了,刚开始可能只是先扣钱,然后通过本地消息表来下单)

还是指,同一个数据,在不同节点中,随着时间的推移,如果没有新的写入的话,达到同一个值

查资料的时候,碰到这篇文章 https://juejin.im/post/5c9443406fb9a070fe0dd9a9#heading-23 感觉就有点奇怪,像两阶段、tcc 、补偿之类的应该和最终一致性没有关系

大佬有話說 (5)

  • 資深大佬 : xstmjh

    后者

  • 主 資深大佬 : ruandao

    @xstmjh 谢谢

  • 資深大佬 : coldear

    分布式系统的特性,读写可能发生在不同的节点,存在在一定时间内,读到的不是最新数据的问题,但最终各个节点的数据应该是一致的。

  • 主 資深大佬 : ruandao

    @coldear

    具体到业务场景呢? 感觉平常开发大多都是,做无状态化,然后 wrap 一下数据库,然后读写不在同一个节点,基本上,就是主库写入,从库读

    但是,两阶段提交,tcc,补偿之类的,都是写操作,主库写入,主库写入数据是一致的,感觉和最终一致性没有关系

  • 資深大佬 : coldear

    @ruandao 有主从节点结构的不一定都是最终一致性,也可是是强一致性的。 主节点可以设置为在所有节点同步后在返回,但这样延迟就比较高。

    业务场景主要是针对需要高可靠性,低延迟,但又不太需要特别高的数据即时性。
    比如微博,发微博的操作需要高可靠性,但你的粉丝不需要在发微博的那一时刻全部看到你的最新微博,可以允许一部分用户先看到,最终所有人都看到就可以。

    在比如订票系统,订票操作需要高可靠和低延迟,但网页上显示的剩余票量不需要 100%精确,

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具