1、CS、BS架構(gòu)定義
CS(Client/Server):客戶端----服務(wù)器結(jié)構(gòu)。C/S結(jié)構(gòu)在技術(shù)上很成熟,它的主要特點是交互性強、具有安全的存取模式、網(wǎng)絡(luò)通信量低、響應(yīng)速度快、利于處理大量數(shù)據(jù)。因為客戶端要負(fù)責(zé)絕大多數(shù)的業(yè)務(wù)邏輯和UI展示,又稱為胖客戶端。它充分利用兩端硬件,將任務(wù)分配到Client 和Server兩端,降低了系統(tǒng)的通訊開銷。C/S結(jié)構(gòu)的軟件需要針對不同的操作系統(tǒng)系統(tǒng)開發(fā)不同版本的軟件,加之產(chǎn)品的更新?lián)Q代十分快,已經(jīng)很難適應(yīng)百臺電腦以上局域網(wǎng)用戶同時使用。
C/S 架構(gòu)是一種典型的兩層架構(gòu),其客戶端包含一個或多個在用戶的電腦上運行的程序,而服務(wù)器端有兩種,一種是數(shù)據(jù)庫服務(wù)器端,客戶端通過數(shù)據(jù)庫連接訪問服務(wù)器端的數(shù)據(jù);另一種是Socket服務(wù)器端,服務(wù)器端的程序通過Socket與客戶端的程序通信。
BS(Browser/Server):瀏覽器----服務(wù)器結(jié)構(gòu),是目前應(yīng)用系統(tǒng)的發(fā)展方向。BS是伴隨著Internet技術(shù)的興起,對C/S架構(gòu)的改進,為了區(qū)別于傳統(tǒng)的C/S 模式,特意稱為B/S模式。在這種結(jié)構(gòu)下,通過W3瀏覽器來進入工作界面,極少部分事務(wù)邏輯在前端(Browser)實現(xiàn),主要事務(wù)邏輯在服務(wù)器端(Server)實現(xiàn),形成三層(3-tier)結(jié)構(gòu)。這樣使得客戶端電腦負(fù)荷大大簡化(因此被稱為瘦客戶端),減輕了系統(tǒng)維護、升級的支出成本,降低了用戶的總體成本(TCO)。
BS的主要特點是分布性強、維護方便、開發(fā)簡單且共享性強、總體擁有成本低。但數(shù)據(jù)安全性問題、對服務(wù)器要求過高、數(shù)據(jù)傳輸速度慢、軟件的個性化特點明顯降低,難以實現(xiàn)傳統(tǒng)模式下的特殊功能要求。它是瘦客戶端,對大量的數(shù)據(jù)輸入以及報表的應(yīng)答等都需要通過瀏覽器與服務(wù)器進行交互,通信開銷大,而且對于實現(xiàn)復(fù)雜的應(yīng)用構(gòu)造有較大的困難。
2、CS、BS 對硬件環(huán)境的要求
(1)C/S 用戶固定,一般只應(yīng)用于局域網(wǎng)中,要求擁有相同的操作系統(tǒng),如果對于不同操作系統(tǒng)還要相應(yīng)開發(fā)不同的版本,并且對于計算機電腦配置要求也較高。
(2)B/S 要求有操作系統(tǒng)和瀏覽器就行,與操作系統(tǒng)平臺無關(guān)
(可以實現(xiàn)跨平臺),對客戶端的計算機電腦配置要求較低。
3、CS的優(yōu)缺點
(1)優(yōu)點:
- 能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器,所以CS客戶端響應(yīng)速度快。
- 操作界面漂亮、形式多樣,可以充分滿足客戶自身的個性化要求。
- 安全性能可以很容易保證,C/S一般面向相對固定的用戶群,程序更加注重流程,它可以對權(quán)限進行多層次校驗,提供了更安全的存取模式,對信息安全的控制能力很強。一般高度機密的信息系統(tǒng)采用C/S結(jié)構(gòu)適宜。
(2)缺點:
- 需要專門的客戶端安裝程序,分布功能弱,針對點多面廣且不具備網(wǎng)絡(luò)條件的用戶群體,不能夠?qū)崿F(xiàn)快速部署安裝和配置。
- 兼容性差,對于不同的開發(fā)工具,具有較大的局限性。若采用不同工具,需要重新改寫程序。
- 開發(fā)、維護成本較高,需要具有一定專業(yè)水準(zhǔn)的技術(shù)人員才能完成,發(fā)生一次升級,則所有客戶端的程序都需要改變。。
- 用戶群固定。由于程序需要安裝才可使用,因此不適合面向一些不可知的用戶,所以適用面窄,通常用于局域網(wǎng)中。
4、BS的優(yōu)缺點
(1)優(yōu)點:
- 分布性強,客戶端零維護。只要有網(wǎng)絡(luò)、瀏覽器,可以隨時隨地進行查詢、瀏覽等業(yè)務(wù)處理。
- 業(yè)務(wù)擴展簡單方便,通過增加網(wǎng)頁即可增加服務(wù)器功能。
- 維護簡單方便,只需要改變網(wǎng)頁,即可實現(xiàn)所有用戶的同步更新。
- 開發(fā)簡單,共享性強。
(2)缺點:
- 個性化特點明顯降低,無法實現(xiàn)具有個性化的功能要求。不過隨著html5的普及,這個缺點越來越弱化了。
- 客戶端服務(wù)器端的交互是請求-響應(yīng)模式,通常動態(tài)刷新頁面,響應(yīng)速度明顯降低(Ajax可以一定程度上解決這個問題)。無法實現(xiàn)分頁顯示,給數(shù)據(jù)庫訪問造成較大的壓力。
小結(jié):CS響應(yīng)速度快,安全性強,一般應(yīng)用于局域網(wǎng)中,但是開發(fā)維護成本高;BS可以實現(xiàn)跨平臺,客戶端零維護,但是個性化能力低,響應(yīng)速度較慢。
您可能感興趣的文章:- 了解java架構(gòu)之微服務(wù)架構(gòu)—雪崩效應(yīng)
- 淺談Java分布式架構(gòu)下如何實現(xiàn)分布式鎖
- Java多線程及分布式爬蟲架構(gòu)原理解析
- Java高級架構(gòu)之FastDFS分布式文件集群詳解
- java使用三層架構(gòu)實現(xiàn)電影購票系統(tǒng)
- 淺析JavaWeb項目架構(gòu)之Redis分布式日志隊列
- java學(xué)生信息管理系統(tǒng)MVC架構(gòu)詳解
- 10本Java架構(gòu)師必讀書籍
- java三層架構(gòu)原理與作用小結(jié)
- 詳解Java 微服務(wù)架構(gòu)