分布式系統

2021-10-08 18:59:36 字數 1345 閱讀 4852

集中式:集中式只有乙個伺服器或者多個伺服器(只能有乙個機架)組成乙個整體、處理所有的業務

分布式系統是由硬體和軟體組分布在不同的網路計算機中(ip網段可能不一樣),彼此之間僅僅通過訊息傳遞、協調整個系統服務 — 《分布式系統與概念設計》

缺點

節點故障:計算程式是分布式的,如果乙個maptask掛了會導致hdfs-block塊丟失,需要考慮容錯

可用性:系統出現異常時,能夠正確提供服務了能力

可擴充套件性:集群擴充套件好後,是否易於擴充套件(10個節點–>15),

一致性:副本機制引發了一致性的問題(修改檔案,也要改到副本,這其中存在延遲,若此時訪問到副本)

分布式事務就是指事務的資源分別位於不同的分布式系統的不同節點之上的事務;

兩階段提交協議(two phase commitment protocol)是分布式事務的基礎協議。

在此協議中,乙個事務協調器(tm, transaction manager)協調多個資源管理器(rm)的活動;

在一階段所有資源管理器(rm)向事務管理器(tm)匯報自身活動狀態

在二階段事務管理器(tm)根據各資源管理器(rm)匯報的狀態,來決定各rm是執行提交操作還是回滾操作;

a.具體操作:

應用程式向事務管理器(tm)提交請求,發起方分布式事務

一階段,事務管理器(tm)聯絡所有資源管理器(rm),通知它們執行準備操作;

資源管理器(rm)返回準備成功,或者失敗的訊息給tm(響應超時算作失敗);

二階段,如果所有rm均準備成功,tm會通知所有rm執行提交;如果任一rm準備失敗,tm會通知所有rm回滾;

通過事務管理器2階段協調資源管理器,使所有資源管理器的狀態最終都是一致的,要麼全部提交,要麼全部回滾

b. 2pc存在的問題:

3pc,即三階段提交,是2階段提交的改進版,其將二階段提交協議的「準備階段」乙份為二,形成了cancommit,precommit,do commit三個階段

a.改進點:

b.存在的問題:

分布式系統

分布式系統和計算機網路系統的共同點是 多數分布式系統是建立在計算機網路之上的,所以分布式系統與計算機網路在物理結構上是基本相同的。他們的區別在於 分布式作業系統的設計思想和網路作業系統是不同的,這決定了他們在結構 工作方式和功能上也不同。網路作業系統要求網路使用者在使用網路資源時首先必須了解網路資源...

分布式系統

分布式,一來就直接看書,除非你有比較深厚的技術功底,要不還是很晦澀難懂的。先想想為什麼會有分布式,分布式怎麼來的。傳統的電信 銀行業,當業務量大了之後,普通伺服器cpu io 網路到了100 請求太慢怎麼辦?最直接的做法,公升級硬體,反正也不缺錢,ibm小型機,大型機,採購了堆硬體。但是網際網路不能...

分布式系統

zookeeper讓服務配置變得更簡單 zookeeper是hadoop下的乙個子專案,它是乙個針對大型分布式系統的可靠的協調系統,提供的功能包括 配置維護 名字服務 分布式同步 組服務等。zookeeper是可以集群複製的,集群間通過zab zookeeper atomic broadcast 協...