国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

分布式系統(tǒng)的一致性級別劃分及Zookeeper一致性級別分析

這篇具有很好參考價值的文章主要介紹了分布式系統(tǒng)的一致性級別劃分及Zookeeper一致性級別分析。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

在談到Zookeeper的一致性是哪種級別的一致性問題,以及CAP原則中的C是哪一種一致性級別時有些疑惑。

下面是大多數(shù)文章中提到的一致性級別

1. 一致性(Consistency)

一致性(Consistency)是指多副本(Replications)問題中的數(shù)據(jù)一致性??梢苑譃閺娨恢滦?、順序一致性與弱一致性。

1.1 強一致性(Strict Consistency)

也稱為:**原子一致性(Atomic Consistency)**線性一致性(Linearizable Consistency)

強一致性有兩個要求:

  • 任何一次讀都能讀到某個數(shù)據(jù)的最近一次寫的數(shù)據(jù)。
  • 系統(tǒng)中的所有進程,看到的操作順序,都和全局時鐘下的順序一致。

簡言之,在任意時刻,所有節(jié)點中的數(shù)據(jù)都是一樣的。

例如,對于關(guān)系型數(shù)據(jù)庫,要求更新過的數(shù)據(jù)能被后續(xù)的訪問都能看到,這是強一致性。

1.2 順序一致性(Sequential Consistency)

the result of any execution is the same as if the operations of all the processors were executed in some sequential order, and the operations of each individual processor appear in this sequence in the order specified by its program. - - Lamport

兩個要求:

  • 任何一次讀都能讀到某個數(shù)據(jù)的最近一次寫的數(shù)據(jù)。
  • 系統(tǒng)的所有進程的順序一致,而且是合理的。即不需要和全局時鐘下的順序一致,錯的話一起錯,對的話一起對。

舉個例子:

一致性的 3 種級別,2024年程序員,zookeeper,linux,分布式

Write(x, 4):寫入x=4?
Read(x, 0):讀出x=0

1)圖a是滿足順序一致性,但是不滿足強一致性的。原因在于,從全局時鐘的觀點來看,P2進程對變量X的讀操作在P1進程對變量X的寫操作之后,然而讀出來的卻是舊的數(shù)據(jù)。但是這個圖卻是滿足順序一致性的,因為兩個進程P1,P2的一致性并沒有沖突。從這兩個進程的角度來看,順序應(yīng)該是這樣的:Write(y,2) , Read(x,0) , Write(x,4), Read(y,2),每個進程內(nèi)部的讀寫順序都是合理的,但是這個順序與全局時鐘下看到的順序并不一樣。

2)圖b滿足強一致性,因為每個讀操作都讀到了該變量的最新寫的結(jié)果,同時兩個進程看到的操作順序與全局時鐘的順序一樣,都是Write(y,2) ,Write(x,4), Read(x,4) ,? Read(y,2)。

3)圖c不滿足順序一致性,當(dāng)然也就不滿足強一致性了。因為從進程P1的角度看,它對變量Y的讀操作返回了結(jié)果0。那么就是說,P1進程的對變量Y的讀操作在P2進程對變量Y的寫操作之前,這意味著它認(rèn)為的順序是這樣的:Write(x,4) , Read(y,0) , Write(y,2), Read(x,0),顯然這個順序又是不能被滿足的,因為最后一個對變量x的讀操作讀出來也是舊的數(shù)據(jù)。因此這個順序是有沖突的,不滿足順序一致性。

1.3 弱一致性

數(shù)據(jù)更新后,如果能容忍后續(xù)的訪問只能訪問到部分或者全部訪問不到,則是弱一致性。

最終一致性就屬于弱一致性。

最終一致性

不保證在任意時刻任意節(jié)點上的同一份數(shù)據(jù)都是相同的,但是隨著時間的遷移,不同節(jié)點上的同一份數(shù)據(jù)總是在向趨同的方向變化。

簡單說,就是在一段時間后,節(jié)點間的數(shù)據(jù)會最終達到一致狀態(tài)。

最終一致性根據(jù)更新數(shù)據(jù)后各進程訪問到數(shù)據(jù)的時間和方式的不同,又可以區(qū)分為:

因果一致性(Casual Consistency)。如果進程A通知進程B它已更新了一個數(shù)據(jù)項,那么進程B的后續(xù)訪問將返回更新后的值,且一次寫入將保證取代前一次寫入。與進程A無因果關(guān)系的進程C的訪問,遵守一般的最終一致性規(guī)則。

**“讀己之所寫(read-your-writes)”一致性。**當(dāng)進程A自己更新一個數(shù)據(jù)項之后,它總是訪問到更新過的值,絕不會看到舊值。這是因果一致性模型的一個特例。

小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現(xiàn)在。

深知大多數(shù)初中級前端工程師,想要提升技能,往往是自己摸索成長或者是報班學(xué)習(xí),但自己不成體系的自學(xué)效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!
因此收集整理了一份《2024年Web前端開發(fā)全套學(xué)習(xí)資料》送給大家,初衷也很簡單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時減輕大家的負(fù)擔(dān)。

一致性的 3 種級別,2024年程序員,zookeeper,linux,分布式
一致性的 3 種級別,2024年程序員,zookeeper,linux,分布式
一致性的 3 種級別,2024年程序員,zookeeper,linux,分布式

由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實戰(zhàn)項目、講解視頻

如果你覺得這些內(nèi)容對你有幫助,可以添加下面V無償領(lǐng)取?。▊渥ⅲ呵岸耍?/strong>
一致性的 3 種級別,2024年程序員,zookeeper,linux,分布式

你覺得這些內(nèi)容對你有幫助,可以添加下面V無償領(lǐng)?。。▊渥ⅲ呵岸耍?*
[外鏈圖片轉(zhuǎn)存中…(img-XhkTRsVx-1710917661882)]文章來源地址http://www.zghlxwxcb.cn/news/detail-848358.html

到了這里,關(guān)于分布式系統(tǒng)的一致性級別劃分及Zookeeper一致性級別分析的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【103期】RabbitMQ 實現(xiàn)多系統(tǒng)間的分布式事務(wù),保證數(shù)據(jù)一致性

    【103期】RabbitMQ 實現(xiàn)多系統(tǒng)間的分布式事務(wù),保證數(shù)據(jù)一致性

    org.springframework.boot spring-boot-starter-amqp mysql mysql-connector-java runtime org.projectlombok lombok true org.springframework.boot spring-boot-starter-jdbc com.alibaba fastjson 1.2.17 3.2.1.2配置文件內(nèi)容: server: port:?8080 spring: datasource: driver-class-name:?com.mysql.cj.jdbc.Driver url:?jdbc:mysql://localhost:3306/test?useUnicode=tru

    2024年04月14日
    瀏覽(31)
  • 不懂分布式系統(tǒng)的核心問題:一致性與共識,還想入門區(qū)塊鏈?挖礦?

    不懂分布式系統(tǒng)的核心問題:一致性與共識,還想入門區(qū)塊鏈?挖礦?

    CAP原理 ===== CAP原理:分布式計算系統(tǒng)不可能同時確保以下三個特性: 一致性(consistency) 可用性(availability) 分區(qū)容忍性(partition) **(1)分區(qū)容忍性:**網(wǎng)絡(luò)可能發(fā)生分區(qū),即節(jié)點之間的通信不可保障。 大多數(shù)分布式系統(tǒng)都分布在多個子網(wǎng)絡(luò)。每個子網(wǎng)絡(luò)就叫做一個區(qū)(

    2024年04月12日
    瀏覽(26)
  • [Etcd]分布式系統(tǒng)中如何使用樂觀鎖保證Mysql和Etcd數(shù)據(jù)最終一致性

    在寫業(yè)務(wù)代碼時,很多時候需要保證數(shù)據(jù)存儲在不同中間件中的一致性。以筆者為例,就遇到了需要將mysql中已存儲的數(shù)據(jù)轉(zhuǎn)存到etcd中,同時還要考慮到并發(fā)場景下如何保證數(shù)據(jù)最終一致性的問題。 該問題形象地表示的話,可以將時間線展開如下 服務(wù)A1更新db數(shù)據(jù)為 {\\\"key1\\\":

    2024年02月02日
    瀏覽(20)
  • 深入理解高并發(fā)下的MySQL與Redis緩存一致性問題(增刪改查數(shù)據(jù)緩存的一致性、Canal、分布式系統(tǒng)CAP定理、BASE理論、強、弱一致性、順序、線性、因果、最終一致性)

    一些小型項目,或極少有并發(fā)的項目,這些策略在無并發(fā)情況下,不會有什么問題。 讀數(shù)據(jù)策略:有緩存則讀緩存,然后接口返回。沒有緩存,查詢出數(shù)據(jù),載入緩存,然后接口返回。 寫數(shù)據(jù)策略:數(shù)據(jù)發(fā)生了變動,先刪除緩存,再更新數(shù)據(jù),等下次讀取的時候載入緩存,

    2024年03月20日
    瀏覽(29)
  • 分布式一致性算法Paxos

    分布式一致性算法Paxos

    ????????Paxos算法是Lamport宗師提出的一種基于消息傳遞的分布式一致性算法,是目前公認(rèn)的解決分布式一致性問題最有效的算法之一。Google Chubby的作者Mike Burrows曾經(jīng)狂妄的說過這個世界上只有一種一致性算法,那就是Paxos,其它的算法都是殘次品。 ????????Paxos算法是

    2023年04月16日
    瀏覽(94)
  • 聊聊分布式架構(gòu)09——分布式中的一致性協(xié)議

    聊聊分布式架構(gòu)09——分布式中的一致性協(xié)議

    目錄 01從集中式到分布式 系統(tǒng)特點 集中式特點 分布式特點 事務(wù)處理差異 02一致性協(xié)議與Paxos算法 2PC(Two-Phase Commit) 階段一:提交事務(wù)請求 階段二:執(zhí)行事務(wù)提交 優(yōu)缺點 3PC(Three-Phase Commit) 階段一:CanCommit 階段二:PreCommit 階段三:doCommit 優(yōu)缺點 Paxos算法 拜占庭將軍問題

    2024年02月08日
    瀏覽(27)
  • 【分布式】一致性哈希和哈希槽

    【分布式】一致性哈希和哈希槽

    當(dāng)我們擁有了多臺存儲服務(wù)器之后,現(xiàn)在有多個key,希望可以將這些個key均勻的緩存到這些服務(wù)器上,可以使用哪些方案呢? 1.1 直接哈希取模 這是一種最容易想到的方法,使用取模算法hash(key)% N,對key進行hash運算后取模,N是機器的數(shù)量。key進行hash后的結(jié)果對3取模,得

    2024年02月03日
    瀏覽(28)
  • 分布式數(shù)據(jù)庫-事務(wù)一致性

    分布式數(shù)據(jù)庫-事務(wù)一致性

    version: v-2023060601 author: 路__ 分布式數(shù)據(jù)庫的“強一致性”應(yīng)該包含兩個方面: serializability(串行) and linearizability(線性一致) ,上述圖為“Highly Available Transactions: Virtues and Limitations”論文中對于一致性模型的介紹。圖中箭頭表示一致性模型之間的關(guān)系。對于異步網(wǎng)絡(luò)上的分

    2024年02月08日
    瀏覽(28)
  • RocketMQ分布式事務(wù) -> 最終一致性實現(xiàn)

    RocketMQ分布式事務(wù) -> 最終一致性實現(xiàn)

    · 分布式事務(wù)的問題常在業(yè)務(wù)與面試中被提及, 近日摸魚看到這篇文章, 闡述的非常通俗易懂, 固持久化下來我博客中, 也以便于我二刷 轉(zhuǎn)載源 : 基于RocketMQ分布式事務(wù) - 完整示例 本文代碼不只是簡單的demo,考慮到一些異常情況、冪等性消費和死信隊列等情況,盡量向可靠業(yè)務(wù)

    2024年02月15日
    瀏覽(29)
  • 分布式系統(tǒng)中的那些一致性(CAP、BASE、2PC、3PC、Paxos、ZAB、Raft)

    分布式系統(tǒng)中的那些一致性(CAP、BASE、2PC、3PC、Paxos、ZAB、Raft)

    本文介紹 CAP、BASE理論的正確理解、Paxos 算法如何保證一致性及死循環(huán)問題、ZAB 協(xié)議中原子廣播及崩潰恢復(fù)以及 Raft 算法的動態(tài)演示。 下面還有投票,一起參與進來吧?? 工作過幾年的同學(xué),尤其是這幾年,大家或多或少都參與過分布式系統(tǒng)的開發(fā),遇到過各式各樣“分布式

    2024年02月05日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包