【web】資料庫應用系統設計體系結構
資料庫系統架構
1.集中式結構
概念:所有的程式,包括DBMS、應用程式、與使用者終端進行通訊的軟體等全部集中在一臺稱為主機的計算機上執行,且所有的資料及其資料處理工作也都在主機中執行。
2.兩層客戶機/伺服器架構
兩層C/S架構將資料庫應用系統的計算機分為客戶機和伺服器兩類,系統的功能在客戶機和伺服器之間劃分,形成一種客戶機請求服務,伺服器提供服務的應用系統結構。
兩層C/S的特點與優點
特點:兩層C/S架構是“肥”客戶機/“瘦”伺服器結構。
客戶機需要配置好幾層軟體。
如作業系統、網路協議軟體、客戶機軟體及應用程式等
伺服器只是單純的資料庫伺服器。
優點:
相對於集中式結構,兩層C/S架構把程式的功能分離,使得客戶端開發集中於資料的顯示和分析,資料庫伺服器則集中於資料的管理,這樣不必在每一個新的應用開發中重新對資料庫進行編碼。
缺點:
- 維護費用較高。客戶端要安裝龐大而複雜的應用程式,當網路使用者的規模達到一定數量之後,系統的維護量急劇增加,維護應用系統變得十分困難。
系統可靠性降低。一個客戶機/伺服器系統是由各自獨立開發、製造和管理的各種硬體和軟體的混合體,其內在的可靠性不如集中式結構的大型機或小型機。
資源利用率不高。使用者在本地硬碟 裝入大量的軟體,但使用的只是其中很少一部分(一般少於10%)。在一個擁有眾多“胖”客戶機的環境中,這無疑時巨大的浪費。 - 系統缺乏靈活性。客戶機/伺服器需要對每一應用獨立地開發應用程式,消費了大量的資源,且“胖”客戶機的計算模式仍然滿足不了日益增長的應用需要。
3.三層資料庫應用系統
把資料庫應用系統分為邏輯上相對獨立的三層,資料庫系統的功能分別由三層實現:
- 資料層負責資料管理和事務處理兩個功能。主要由一個或多個資料庫管理系統實現。
- 功能層由客戶機中負責業務規則處理的程式碼分離而來,用一個專門的應用伺服器支援,負責業務邏輯功能。改變業務處理規則時,不對錶示層產生影響。
- 表示層仍配置在客戶機中 ,實現使用者與應用間的對話,如檢查使用者從鍵盤等輸入的資料,顯示應用輸出的資料,提供表達邏輯功能。變更使用者介面時,只需改寫顯示控制和資料檢查程式,不影響其他兩層。檢查的內容也只限於資料的形式和值的範圍,不包括有關業務本身的處理邏輯。
優點
系統靈活性高。把三個層次分別放在各自不同的硬體(計算機)系統上能夠適應客戶機數目的增加和處理負荷的變動。
降低了系統分析設計的難度,能夠使系統結構清晰、分工明確,又利用後期的維護和升級。
缺點
降低了系統的效能。
增加了系統實現的難度。
元件的生命週期管理,安全管理,多使用者訪問的事務管理,元件之間的連線和通訊,應用的可靠性和可伸縮性。
【注】關於伸縮性,指的是當多個使用者訪問系統時,系統對每個使用者訪問請求處理時間。比如說10個使用者訪問系統,系統處理要花10s。當使用者訪問增多時候,系統處理不會變的很慢。
相關文章
- 【Web總結】資料庫系統Web資料庫
- 系統設計概念:生產 Web 應用的架構Web架構
- Go Web 程式設計--應用資料庫GoWeb程式設計資料庫
- 【Linux系統程式設計】libevent庫event_base結構體Linux程式設計結構體
- 競拍系統設計和核心資料結構資料結構
- 程式設計體系結構(09):分散式系統架構程式設計分散式架構
- 資料庫系統設計概述資料庫
- 重拾Java Web應用的基礎體系結構JavaWeb
- Postgresql資料庫體系結構-程式和記憶體結構SQL資料庫記憶體
- 程式設計體系結構(07):JavaEE之Web開發程式設計JavaWeb
- 資料庫:系統設計的核心資料庫
- 資料庫系統設計:分割槽資料庫
- 超大型Oracle資料庫應用系統的設計方法(下)UVOracle資料庫
- Go Web 程式設計入門--應用資料庫GoWeb程式設計資料庫
- EasyUI+JavaWeb獎助學金管理系統[3]-資料庫結構設計UIJavaWeb資料庫
- 明確應用程式型別與資料庫結構設計型別資料庫
- PostgreSQL 資料庫學習 - 1.資料庫體系結構之儲存結構SQL資料庫
- 《資料密集型應用系統設計》筆記筆記
- 圖資料庫 Nebula Graph 的資料模型和系統架構設計資料庫模型架構
- 部落格系統 - 資料庫設計(三)資料庫
- PDM系統的結構設計
- Oracle 19c資料庫體系結構-2Oracle資料庫
- Oracle 19c資料庫體系結構-1Oracle資料庫
- [資料庫系統]儲存和檔案結構資料庫
- 如何設計應用系統的資料許可權管理
- 程式設計體系結構(02):Java異常體系程式設計Java
- Greenplum資料庫系統架構資料庫架構
- 【系統設計】系統設計中經常使用的20個高階資料結構和演算法資料結構演算法
- 【系統設計】分散式鍵值資料庫分散式資料庫
- PostgreSQL資料庫管理 第二章體系結構SQL資料庫
- 庫存系統:應用層、領域層、對接層的架構設計架構
- 太原ATC系統計劃資料結構明細資料結構
- 資料庫應用系統中的資料庫完整性(上)KP資料庫
- 資料結構 課程設計 員工管理系統(C語言)資料結構C語言
- 作業系統體系結構作業系統
- HBase 系統架構及資料結構架構資料結構
- 資料庫系統架構討論資料庫架構
- MySQL練習——教學系統資料庫設計MySql資料庫