天天看點

分布式系統部分筆記

分布式基礎

什麼是分布式系統

分布式系統是一系列具有自主計算單元的集合,這些集合對于使用者就像是一個單個的統一的系統一樣。

網絡作業系統

分布式作業系統:配置在分布式系統上的作業系統,能夠直接對分布式系統中的各種資 源進行動态配置設定,并能有效地控制和協調分布式系統中各任務的并行執行,同時還向用 戶提供了一個友善的、透明的使用整個分布式系統的界面

網絡作業系統:是在網絡環境下實作對網絡資源的管理和控制的作業系統,是使用者與網絡資源之間的接口。網絡作業系統是建立在獨立的作業系統之上,為網絡使用者提供使用網絡系統資源的橋梁。在多個使用者争用系統資源時,網絡作業系統進行資源調劑管理, 它依靠各個獨立的計算機作業系統對所屬資源進行管理,協調和管理網絡使用者程序或程 序與聯機作業系統進行互動。

DOS: distributed operating system 分布式作業系統,緊耦合系統,用于管理多處理器系統和同構 式多計算機系統

NOS: network operating system 網絡作業系統,松耦合系統,用于管理異構式多計算機系統

分布式系統目标

  • 使得資源可利用:使使用者能夠友善地通路遠端資源,并且以一種受控制的方式與其他使用者共享這些資源
  • 分布式透明性:分布式系統把它的程序和資源實際上在多台計算機上分布這樣一個事 實隐藏起來,能夠在使用者和應用程式面前呈現為單個計算機系統,這樣的分布式稱 為具有透明性,包括通路、位置、遷移、重定位、複制、并發、故障。
  • 開放性:系統根據一系列準則來提供服務,這些準則描述了所提供服務的文法 和語義,則說系統具有開放性。
  • 可擴充性:在規模上可擴充、地域上可擴充、管理上可擴充

為什麼要分布式

  • 經濟性:微處理器能提供比大型機更好的成本效益。
  • 速度:分布式系統能提供比大型機更強的計算能力。
  • 固有的分布性:有一些應用包含實體上分布的機器。
  • 可靠性:當某台機器崩潰時,整個系統仍能正常工作。
  • Incremental growth(可擴充性):計算能力逐漸增加
  • 資料共享:允許使用者共享一個資料庫。
  • 外設共享:允許使用者共享昂貴的外設,如彩色列印機。
  • 靈活性:将工作負載更有效的分派到合适的機器上。

分布式系統類型:

分布式計算系統,分布式資訊系統,分布式普适系統。

一緻性

線性一緻性(Linear Consistency)

​ 強一緻性或原子一緻性

  • 每一個讀操作都将傳回『最近的寫操作』(基于單一的實際時間)的值
  • 對任何程序的表現均一緻。

順序一緻性(Sequential Consistency)

  • 讀寫操作按照某種順序
  • 所有程序看到的讀寫順序一緻

因果一緻性(Causal Consistency)

  • 所有程序對因果關系必須保持相同順序(因果讀寫的先後順序)
  • 沒有因果關系的寫操作,不同程序看到的順序可以不同。

FIFO一緻性

  • 對同一程序,讀寫按照本地時間順序,即雖有程序看到的統一程序讀寫按照先後順序。
  • 不同程序的讀寫順序沒有要求,不需要滿足因果一緻性。

繼續閱讀