複製鏈接
請複製以下鏈接發送給好友

分層體系結構

鎖定
分層體系結構指的是將系統的組件分隔到不同的層中,每一層中的組件應保持內聚性,並且應大致在同一抽象級別; 每一層都應與它下面的各層保持鬆散耦合 [1] 
中文名
分層體系結構
外文名
Layered Architecture
適用對象
網絡操作系統和網絡通信系統
類    屬
設計趨勢

目錄

分層體系結構分層思想

分層是基於面向對象上的,是更高層次上的設計理念。 在軟件開發技術的發展過程中, 出現了很多優秀的思想與模式。這些思想和模式凝結了無數程序設計人員的實踐經驗和智慧,是軟件開發領域的精華。這其中有很多思想對分層架構設計有着重要的指導作用。下面將描述一下對本文的研究起着指導作用的思想以及本架構遵循的原則。 [2] 

分層體系結構特點

分層體系結構優點

(1)開發人員的專業分工,專注理解某一層。 由於某一層僅僅調用其相鄰下一層所提供的程序接口,只需要本層的接口和相鄰下一層的接口定義清晰完整,開發人員在開發某一層時就可以像關注集中於這一層所用的功能和技術。 [1] 
(2) 可以很容易用新的實現來替換原有層次的實現。 只要前後提供的服務(接口)相同,即可替換。 系統開發過程中,功能需求不斷變化,我們可以替換現有的層次以滿足新的需求變化。 [1] 
(3)降低了系統間的依賴。 比如業務邏輯層中的業務發生變化, 其他兩層即表現層以及數據訪問層程序也不需要變化。 這大大降低了系統各層之間的依賴。 [1] 
(4)有利於複用。 充分利用現有的功能程序組件,將已經辨識的具有相對獨立功能的層應用於新系統的
開發,保證新系統開發的過程中,能夠將重點集中於辨識和實現應用系統特有的業務功能, 最終縮短系統開發週期,提高系統的質量。 [1] 

分層體系結構弊端

(1)級聯修改問題。 一些複雜的業務中,由於業務流程發生變化,為了這個變化所有層都需要修改。 [1] 
(2)性能問題。 本來是直接簡單的操作,需要在整個系統中層層傳遞,勢必造成性能的下降,同時也加大的開發的複雜度。 [1] 
從上面的分析可以看出, 分層架構設計有許多優點同樣存在不足,在實際使用過程中,我們應該權衡利
弊關係,選擇一種符合實際項目的最佳方案。 [1] 

分層體系結構應用

(1)數據庫系統的分層設計。
(2)網絡分層體系結構。
(3)操作系統分層體系結構。

分層體系結構舉例

開放系統互連參考模型 (Open System Interconnect 簡稱OSI)是國際標準化組織(ISO)和國際電報電話諮詢委員會(CCITT)聯合制定的開放系統互連參考模型,為開放式互連信息系統提供了一種功能結構的框架。它從低到高分別是:物理層數據鏈路層、網絡層、傳輸層、會話層、表示層應用層
開放系統互連參考模型為實現開放系統互連所建立的通信功能分層模型,簡稱OSI參考模型。其目的是為異種計算機互連提供一個共同的基礎和標準框架,併為保持相關標準的一致性和兼容性提供共同的參考。這裏所説的開放系統,實質上指的是遵循OSI參考模型和相關協議能夠實現互連的具有各種應用目的的計算機系統。
OSI參考模型是計算機網路體系結構發展的產物。它的基本內容是開放系統通信功能的分層結構。這個模型把開放系統的通信功能劃分為七個層次,從鄰接物理媒體的層次開始,分別賦於1,2,……7層的順序編號,相應地稱之為物理層、數據鏈路層、網絡層、運輸層、會話層、表示層和應用層。每一層的功能是獨立的。它利用其下一層提供的服務併為其上一層提供服務,而與其他層的具體實現無關。這裏所謂的“服務”就是下一層向上一層提供的通信功能和層之間的會話規定,一般用通信原語實現。兩個開放系統中的同等層之間的通信規則和約定稱之為協議。通常把1~4層協議稱為下層協議,5~7層協議稱為上層協議。
1、國際標準化組織ISO在1979年建立了一個分委員會來專門研究一種用於開放系統的體系結構,提出了開放系統互連OSI模型,這是一個定義連接異種計算機的標準主體結構。
2、OSI簡介:OSI採用了分層的結構化技術,共分七層,物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。
3、OSI參考模型的特性:是一種異構系統互連的分層結構;提供了控制互連繫統交互規則的標準骨架;定義一種抽象結構,而並非具體實現的描述;不同系統中相同層的實體為同等層實體;同等層實體之間通信由該層的協議管理;相信層間的接口定義了原語操作和低層向上層提供的服務;所提供的公共服務是面向連接的或無連接的數據服務;直接的數據傳送僅在最低層實現;每層完成所定義的功能,修改本層的功能並不影響其他層。
4、物理層:提供為建立、維護和拆除物理鏈路所需要的機械的、電氣的、功能的和規程的特性;有關的物理鏈路上傳輸非結構的位流以及故障檢測指示。
5、數據鏈路層:在網絡層實體間提供數據發送和接收的功能和過程;提供數據鏈路的流控。
6、網絡層:控制分組傳送系統的操作、路由選擇、擁護控制、網絡互連等功能,它的作用是將具體的物理傳送對高層透明。
7、傳輸層:提供建立、維護和拆除傳送連接的功能;選擇網絡層提供最合適的服務;在系統之間提供可靠的透明的數據傳送,提供端到端的錯誤恢復和流量控制。
8、會話層:提供兩進程之間建立、維護和結束會話連接的功能;提供交互會話的管理功能,如三種數據流方向的控制,即一路交互、兩路交替和兩路同時會話模式 。
9、表示層:代表應用進程協商數據表示;完成數據轉換、格式化和文本壓縮。
10、應用層:提供OSI用户服務,例如事務處理程序、文件傳送協議和網絡管理等。
參考資料
  • 1.    王湘文,陳建倫,陳紀銘 .分層軟件架構設計及其應用研究.[J].福建電腦.2011年第6期
  • 2.    陽玉琴,吳茂昌.ASP.NET 分層架構研究.[J].武漢.軟件導刊.第8卷 第9期 2009年 9 月