1、C/S架構和B/S架構概念
(1)C/S架構
C/S架構即Client/Server
(客戶機/伺服器)結構,是大家熟知的軟體系統體系結構。
通過將任務合理分配到Client
端和Server
端,降低了系統的通訊開銷,可以充分利用兩端硬體環境的優勢。
早期的軟體系統多以此作為首選設計標準。
(2)B/S架構
B/S架構即Browser/Server
(瀏覽器/伺服器)結構,是隨著Internet技術的興起,對C/S架構的一種變化或者改進的結構。
在這種結構下,使用者介面完全通過WWW
瀏覽器實現,一部分事務邏輯在前端實現,但是主要事務邏輯在伺服器端實現,形成所謂三層架構結構。
B/S架構主要是利用了不斷成熟的WWW
瀏覽器技術,結合瀏覽器的多種Script語言(VBScript、JavaScript…)和ActiveX技術,用通用瀏覽器就實現了原來需要複雜專用軟體才能實現的強大功能,並節約了開發成本,是一種全新的軟體系統構造技術。
B/S架構成為當今應用軟體的首選體系結構。
2、C/S結構與B/S架構的區別
Client/Server
是建立在區域網的基礎上的。
Browser/Server
是建立在廣域網的基礎上的。
- 硬體環境不同:
C/S架構一般建立在專用的網路上, 小範圍裡的網路環境, 區域網之間再通過專門伺服器提供連線和資料交換服務。
B/S架構是建立在廣域網之上的,不必是專門的網路硬體環境,而且資訊自己管理。比C/S架構有更強的適應範圍, 一般只要有作業系統和瀏覽器就行 。 - 對安全要求不同:
C/S架構一般面向相對固定的使用者群,對資訊保安的控制能力很強。 一般高度機密的資訊系統採用C/S架構適宜,可以通過B/S架構釋出部分可公開資訊。
B/S架構建立在廣域網之上,對安全的控制能力相對弱,面向是不可知的使用者群。 - 對程式架構不同:
C/S架構的程式可以更加註重流程,可以對許可權多層次校驗,對系統執行速度可以較少考慮。
B/S架構的程式側重對安全以及訪問速度的多重的考慮,建立在需要更加優化的基礎之上。比C/S架構有更高的要求。
B/S架構的程式是發展的趨勢,一些新技術的推出,使B/S架構更加成熟。 - 軟體重用不同:
C/S架構的程式可以不為整體性考慮,,程式的重用性不如在B/S架構的程式要求高。
B/S架構的程式側重多重結構,要求構件具有相對獨立的功能模組,能夠相對較好的重用。 - 系統維護不同:
系統維護是軟體生存週期中重要的組成部分,並且開銷很大。
C/S架構程式的升級維護必須整體考察,處理出現的問題以及系統升級會非常困難,有時候可能是再做一個全新的系統。而且還需要使用者從網上自己下載安裝實現升級。
B/S架構程式基本上是由不同功能的模組組成,如果某個模組出現問題或者需要升級,單獨維護該模組就可以,系統維護升級的開銷可以減到最小。 - 處理問題不同:
C/S架構的程式面向人群比較固定,並且處理的問題在相同區域,安全要求高,與作業系統版本有一定關聯。
B/S架構的程式建立在廣域網上,面向不同的使用者群,這是C/S架構的程式無法做到的,與作業系統平臺關聯最小。 - 使用者介面不同:
C/S架構的程式多是建立的Window平臺上,表現方法有限,對程式設計師普遍要求較高。
B/S架構的軟體建立在瀏覽器上,,有更加豐富和生動的表現方式,與使用者交流。並且大部分開發難度降低,減低開發成本。 - 資訊流不同:
C/S架構的程式一般是典型的中央集權的機械式處理,,互動性相對低。
B/S架構的程式資訊流向可變化,如:企業與企業間的電子商務(B-B模式),企業與消費者之間的電子商務(B-C模式) ,企業與政府間的電子商務(B-G模式)等,資訊流向的變化更象交易中心。
3、C/S架構和B/S架構優點和缺點
(1)B/S模式的優點和缺點:
B/S結構的優點:
- 具有分佈性特點,可以隨時隨地進行查詢、瀏覽等業務處理。
- 業務擴充套件簡單方便,通過增加頁面即可增加伺服器功能。
- 升級維護簡單方便,只需要改變頁面,即可實現所有使用者的同步更新。
B/S模式的缺點:
- 響應速度不及C/S架構,隨著AJAX技術的發展,相比傳統B/S架構軟體提升一倍速度。
- 不同瀏覽器之間的介面和重新整理機制略有不同,有的時候需要根據不同的瀏覽器單獨設計介面。但隨著技術的發展,B/S架構軟體使用者體驗效果與C/S架構的軟體相差不多。
(2)C/S模式的優點和缺點:
C/S模式的優點:
- 由於客戶端實現與伺服器的直接相連,沒有中間環節,因此響應速度較快。
- C/S結構的管理資訊系統具有較強的事務處理能力。
- 系統具有穩定性和安全性高。
C/S模式的缺點:
- 只適用於區域網。
而隨著網際網路的飛速發展,移動辦公和分散式辦公越來越普及,這需要我們的系統具有擴充套件性。
遠端訪問需要專門的技術,同時要對系統進行專門的設計來處理分散式的資料。 - 客戶端需要安裝專用的客戶端軟體。
首先涉及到安裝的工作量,其次任何一臺電腦出問題,如病毒、硬體損壞,都需要進行安裝或維護。
還有系統軟體升級時,每一臺客戶機需要重新安裝,其維護和升級成本非常高。、 - 對客戶端的作業系統一般也會有限制。
可能適應於Win7系統,但不能用於Win8系統或Windows10系統,
或者不適用於微軟新的作業系統等等,更不用說Linux、Unix等。