C/S架構(gòu)是常用的兩層架構(gòu),通常也稱之為客戶端/服務(wù)器架構(gòu)。服務(wù)器運(yùn)行服務(wù)端程序,客戶端安裝客戶端軟件。在此架構(gòu)里服務(wù)端和客戶端分別完成不同的任務(wù),客戶端處理用戶的前端界面和交互操作,服務(wù)端處理后臺(tái)業(yè)務(wù)邏輯和請(qǐng)求數(shù)據(jù),這使得兩端的通訊速度和通訊的效率大大的提高。服務(wù)器通常采用高性能的PC、工作站或小型機(jī),并采用大型數(shù)據(jù)庫(kù)系統(tǒng),如Oracle、Sybase、Informix或SQLServer??蛻舳诵枰惭b專用的客戶端軟件。
C/S的優(yōu)點(diǎn)是能充分發(fā)揮客戶端PC的處理能力,很多工作可以在客戶端處理后再提交給服務(wù)器。對(duì)應(yīng)的優(yōu)點(diǎn)就是客戶端響應(yīng)速度快。缺點(diǎn)主要有以下幾個(gè):
而隨著互聯(lián)網(wǎng)的飛速發(fā)展,移動(dòng)辦公和分布式辦公越來(lái)越普及,這需要我們的系統(tǒng)具有擴(kuò)展性。這種方式遠(yuǎn)程訪問(wèn)需要專門的技術(shù),同時(shí)要對(duì)系統(tǒng)進(jìn)行專門的設(shè)計(jì)來(lái)處理分布式的數(shù)據(jù)。
客戶端需要安裝專用的客戶端軟件。首先涉及到安裝的工作量,其次任何一臺(tái)電腦出問(wèn)題,如病毒、硬件損壞,都需要進(jìn)行安裝或維護(hù)。特別是有很多分部或?qū)Yu店的情況,不是工作量的問(wèn)題,而是路程的問(wèn)題。還有,系統(tǒng)軟件升級(jí)時(shí),每一臺(tái)客戶機(jī)需要重新安裝,其維護(hù)和升級(jí)成本非常高。
對(duì)客戶端的操作系統(tǒng)一般也會(huì)有限制??赡苓m應(yīng)于Win98,但不能用于win2000或WindowsXP。或者不適用于微軟新的操作系統(tǒng)等等,更不用說(shuō)Linux、Unix等。
Client/Server是建立在局域網(wǎng)的基礎(chǔ)上的。Browser/Server是建立在廣域網(wǎng)的基礎(chǔ)上的。
1.硬件環(huán)境不同:C/S一般建立在專用的網(wǎng)絡(luò)上,小范圍里的網(wǎng)絡(luò)環(huán)境,局域網(wǎng)之間再通過(guò)專門服務(wù)器提供連接和數(shù)據(jù)交換服務(wù)。B/S建立在廣域網(wǎng)之上的,不必是專門的網(wǎng)絡(luò)硬件環(huán)境。例如電話上網(wǎng),租用設(shè)備,信息管理,有比C/S更強(qiáng)的適應(yīng)范圍,一般只要有操作系統(tǒng)和瀏覽器就行。
2.對(duì)安全要求不同:C/S一般面向相對(duì)固定的用戶群,對(duì)信息安全的控制能力很強(qiáng),一般高度機(jī)密的信息系統(tǒng)采用C/S結(jié)構(gòu)適宜,可以通過(guò)B/S發(fā)布部分可公開(kāi)信息。B/S建立在廣域網(wǎng)之上,對(duì)安全的控制能力相對(duì)弱,面向是不可知的用戶群。
3.對(duì)程序架構(gòu)不同:C/S程序可以更加注重流程,可以對(duì)權(quán)限多層次校驗(yàn),對(duì)系統(tǒng)運(yùn)行速度可以較少考慮。B/S對(duì)安全以及訪問(wèn)速度的多重的考慮,建立在需要更加優(yōu)化的基礎(chǔ)之上,比C/S有更高的要求。B/S結(jié)構(gòu)的程序架構(gòu)是發(fā)展的趨勢(shì),從MS的.Net系列的BizTalk2000Exchange2000等,全面支持網(wǎng)絡(luò)的構(gòu)件搭建的系統(tǒng).。SUN和IBM推的JavaBean構(gòu)件技術(shù)等,使B/S更加成熟。
4.軟件重用不同:C/S程序可以不可避免的整體性考慮,構(gòu)件的重用性不如在B/S要求下的構(gòu)件的重用性好。B/S對(duì)的多重結(jié)構(gòu),要求構(gòu)件相對(duì)獨(dú)立的功能,能夠相對(duì)較好的重用。
5.系統(tǒng)維護(hù)不同:系統(tǒng)維護(hù)在是軟件生存周期中,開(kāi)銷大。重要C/S程序由于整體性,必須整體考察,處理出現(xiàn)的問(wèn)題以及系統(tǒng)升級(jí)。升級(jí)難,可能是再做一個(gè)全新的系統(tǒng)。B/S程序由構(gòu)件組成,方便構(gòu)件個(gè)別的更換,實(shí)現(xiàn)系統(tǒng)的無(wú)縫升級(jí),系統(tǒng)維護(hù)開(kāi)銷減到最小,用戶從網(wǎng)上自己下載安裝就可以實(shí)現(xiàn)升級(jí)。
6.處理問(wèn)題不同:C/S程序可以處理用戶面固定,并且在相同區(qū)域,安全要求高需求,與操作系統(tǒng)相關(guān),應(yīng)該都是相同的系統(tǒng)。B/S建立在廣域網(wǎng)上,面向不同的用戶群,分散地域,這是C/S無(wú)法作到的,與操作系統(tǒng)平臺(tái)關(guān)系最小。
7.用戶接口不同:C/S多是建立的Window平臺(tái)上,表現(xiàn)方法有限。對(duì)程序員普遍要求較高。B/S建立在瀏覽器上,,有更加豐富和生動(dòng)的表現(xiàn)方式與用戶交流,并且大部分難度減低,減低開(kāi)發(fā)成本。
8.信息流不同:C/S程序一般是典型的中央集權(quán)的機(jī)械式處理,交互性相對(duì)低。B/S信息流向可變化,B-B、B-C、B-G等信息流向的變化,更象交易中心。