本書相對來說比較基礎,筆記會比較簡單
第一講 理解分層的概念
一、軟體系統的分層
- 根據主觀上對系統按照用戶需求和內在技術原理進行劃分,可以分成應用層與實作層,
- 應用層是從用戶需求出發
- 實作層本質上是技術性內容
- 根據一個系統能夠做什么和 這個系統做的怎么樣可以分成功能性與非功能性
- 功能性比如播放音樂,拍攝圖片等
- 非功能性比如有一個好看的界面,快速運行的軟體等
二、完備性
完備性是非功能性特征,也非常重要
- 資料完備性:軟體系統中的資料要完整、準確且無沖突
- 行為完整性:軟體系統要可順利運行,并且保證不存在邏輯性錯誤
- 安全性:軟體系統只對認證用戶授權有限的資料訪問與使用功能
第二講 中心化與去中心化
一、 兩種軟體系統
現代軟體系統主要采用兩種架構:去中心化架構與中心化架構
中心化系統中一個中心化模塊連接了其他所有的模塊,而去中心化系統沒有中心節點,從而無法進行節點間的協調與控制,
二、去中心化系統的優勢
建立在多臺計算機之上的去中心化系統主要具有如下優勢:
- 計算能力更強:計算能力表現為所有互聯計算能力之和
- 成本更低:一臺超級計算機的搭建、維護與運營成本會遠遠高于相同計算能力的去中心化系統
- 可靠性更好:一個計算節點崩潰整個系統依然可以作業,影響微乎其微
- 自增長:一個去中心化系統的計算能力可以通過加入新的計算機來提升
三、去中心化的劣勢
- 節點間的冗余通信:各節點需要頻繁通信,需要建立在可靠完善的通信協議,才能發送接受并且處理資訊,會產生額外開銷并且占用一定計算機資源
- 節點間的協調:系統的協調協議各節點的參與,難度大,會產生額外的開銷,占用計算機資源
- 對網路的過度依賴: 去中心化系統中的成員節點需要不停地互相通信,這個通信程序依靠網路作為媒介,
- 系統編程復雜:系統的協調協議各節點的參與,難度大,會產生額外的開銷,占用計算機資源,
- 安全問題:計算任務需要直接在網路上進行通信協調與資料傳遞,所以存在可靠性的問題,系統對節點的使用網路的權限限制越大,可靠性越高
四、去中心化的點對點網路系統
點對點網路是一種區中心化系統,每臺計算機在沒有任何中心節點的情況下向系統中的其他計算機直接提供相關資源(如計算能力、存盤空間、資料服務與網路帶寬),任一一個節點即使資源提供者也是使用者,
五、兩種結合中心化與去中心化系統

擁有中心節點的去中心化系統和去中心化系統作為中心節點的中心化系統
六、識別去中心化系統
在系統中是否能尋找到一個組成部分(資料庫,用戶等級,登入/登出模塊或者是緊急停止按鈕)可以直接關閉這個系統,找到說明不是去中心化系統,
區塊鏈的用途:實作且維護去中心化系統的完備性
區塊鏈是去中心化軟體系統實作曾的一部分
第三講 去中心化
點對點系統相對于中心化系統的優勢在于前者直接在交易雙方之間進行互動,不通過中間人, 因此處理時間低,成本低
一、點對點系統
由若干節點(pc)組成的分布式軟體系統,系統中單一節點的計算資源(比如CPU處理能力、存盤容量)可直接被其他節點呼叫,
所有用戶的計算機均為計算機資源的供應者與提供者,
二、點對點系統的架構
-
點對點系統是分布式計算機系統,由共享計算機資源的各個節點組成,
-
中心化系統通過維護中心節點以促進系統成員之間的互動,同時維護不同節點提供的服務目錄,或執行節點的查找和標識等任務,
-
完全分布式的點對點系統可使用區塊鏈技術來實作和維護系統的完備性,
-
完全去中心化的點對點系統可以取代中心化系統下靠資訊中介建立起來的商業模式
-
點對點系統可以是中心化的也可以是完全去中心化的,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/306044.html
標籤:區塊鏈
