籍慧文
摘 要 隨著社會(huì)發(fā)展進(jìn)程的不斷深入,科學(xué)技術(shù)得到了迅猛發(fā)展。以互聯(lián)網(wǎng)和計(jì)算機(jī)為代表的科學(xué)技術(shù)已經(jīng)深入人們的生活之中。在某些國(guó)家,計(jì)算機(jī)技術(shù)成為推動(dòng)社會(huì)國(guó)家經(jīng)濟(jì)發(fā)展的主要推動(dòng)力。就計(jì)算機(jī)技術(shù)而言,B\S與C\S技術(shù)在性能和發(fā)展前景方面一直存在爭(zhēng)議。本文將針對(duì)這兩種技術(shù)的特點(diǎn)和差異進(jìn)行詳細(xì)闡述,使開(kāi)發(fā)人員對(duì)該技術(shù)形成更加深刻的認(rèn)識(shí)。
【關(guān)鍵詞】B\S C\S 架構(gòu)分析
1 什么是B\S和C\S
1.1 什么是C\S結(jié)構(gòu)
所謂C\S結(jié)構(gòu),就是客戶端(Client)\服務(wù)器(Server)結(jié)構(gòu)。C\S結(jié)構(gòu)將軟件系統(tǒng)分為客戶端和服務(wù)器兩部分。客戶端接受的指令直接和服務(wù)器連接,一定程度上提升了系統(tǒng)通訊速度。C\S結(jié)構(gòu)模式以其易搭建的特點(diǎn)被廣泛應(yīng)用在小型應(yīng)用軟件系統(tǒng)中。目前,大型系統(tǒng)建設(shè)采用基于MVC的WEB架構(gòu)。相比于復(fù)雜的MVC架構(gòu),C\S結(jié)構(gòu)雖然簡(jiǎn)單以搭建,但是,在某些方面兩者具有同樣的功能。兩者均能夠在以搭建的架構(gòu)下組建不同功能的模塊,拓展新功能。同時(shí),無(wú)論是外部還是內(nèi)部用戶也能給訪問(wèn)新的系統(tǒng)和應(yīng)用程序。
C\S結(jié)構(gòu)體系具有一定的開(kāi)放性。但是,這種開(kāi)放模式只應(yīng)用在系統(tǒng)基礎(chǔ)建設(shè)。在特殊環(huán)境下,無(wú)論是客戶端還是服務(wù)器都需要借助其他軟件才能運(yùn)行。換句話說(shuō),以C\S為架構(gòu)建設(shè)的系統(tǒng)需要開(kāi)發(fā)出應(yīng)用在不同操作系統(tǒng)的軟件。在科學(xué)技術(shù)不斷發(fā)展的當(dāng)下,C\S架構(gòu)技術(shù)已經(jīng)不能適應(yīng)時(shí)代發(fā)展潮流。
1.2 什么是B\S結(jié)構(gòu)
B\S結(jié)構(gòu),即瀏覽器(Browser)\服務(wù)器(Server)結(jié)構(gòu)。在一些開(kāi)發(fā)人員看來(lái),B\S結(jié)構(gòu)是C\S結(jié)構(gòu)的升級(jí)或者改進(jìn)。相比于C\S結(jié)構(gòu),B\S結(jié)構(gòu)的用戶界面是通過(guò)瀏覽器來(lái)實(shí)現(xiàn)的,并且瀏覽器界面只承擔(dān)少量邏輯運(yùn)算,大部分指令邏輯交由服務(wù)器完成。在這種模式下,減少了瀏覽器界面的運(yùn)行負(fù)荷,有利于系統(tǒng)維護(hù)和升級(jí)改造。開(kāi)發(fā)人員在局域網(wǎng)上開(kāi)發(fā)出基于B\S結(jié)構(gòu)的應(yīng)用軟件,通過(guò)Internet連接到數(shù)據(jù)庫(kù)。另外,利用Internet獨(dú)特屬性,不同地點(diǎn)的不同人員能夠在不同時(shí)間通過(guò)Internet接入系統(tǒng),對(duì)系統(tǒng)進(jìn)行訪問(wèn)。 Java語(yǔ)言的出現(xiàn)為跨平臺(tái)系統(tǒng)建設(shè)提供了捷徑。所以java語(yǔ)言+B\S架構(gòu)模式已經(jīng)成為跨平臺(tái)系統(tǒng)開(kāi)發(fā)的模版。
1.3 管理軟件的主流技術(shù)
管理軟件技術(shù)主要經(jīng)歷了三個(gè)發(fā)展階段。上世紀(jì)末開(kāi)發(fā)出的DOS字符界面到windows圖形界面和如今的瀏覽器界面。另外,今天我們使用的瀏覽器界面不僅直觀方便,瀏覽器界面的建設(shè)風(fēng)格是類似或者是一樣的。瀏覽器界面的統(tǒng)一,降低了對(duì)界面操作人員的要求,增加了系統(tǒng)的實(shí)用性。
2 C\S和B\S的比較
C\S和B\S結(jié)構(gòu)各有所長(zhǎng),兩種結(jié)構(gòu)都被廣泛的應(yīng)用在各個(gè)領(lǐng)域的系統(tǒng)中。從目前的情況來(lái)看,這兩種架構(gòu)模式都擁有自己的客戶基礎(chǔ)。
2.1 C\S的優(yōu)勢(shì)與劣勢(shì)
2.1.1 前端服務(wù)器運(yùn)行負(fù)荷輕
基于C\S結(jié)構(gòu)開(kāi)發(fā)的系統(tǒng)是以瀏覽器為前端界面,數(shù)據(jù)庫(kù)支持后臺(tái)運(yùn)行,系統(tǒng)運(yùn)行時(shí),這些客戶端接受客戶操作指令,但是客戶端界面只進(jìn)行接收和反饋客戶指令,邏輯運(yùn)算交由服務(wù)器處理.在這樣的運(yùn)行機(jī)制下,前端界面運(yùn)行壓力得到極大的緩解,服務(wù)器一般是由高性能數(shù)據(jù)庫(kù)來(lái)支持。所以,客戶的指令處理速度不會(huì)減慢,可以說(shuō),C\S結(jié)構(gòu)能夠?yàn)榭蛻魩?lái)流暢的操作體驗(yàn)。
2.1.2 數(shù)據(jù)管理透明化
數(shù)據(jù)庫(kù)在進(jìn)行數(shù)據(jù)儲(chǔ)存時(shí),獨(dú)立于前端界面和后臺(tái)程序,用戶只有儲(chǔ)存數(shù)據(jù)的權(quán)限,不能干涉數(shù)據(jù)庫(kù)儲(chǔ)存數(shù)據(jù)的過(guò)程。所以,基于C\S建設(shè)的系統(tǒng),在儲(chǔ)存數(shù)據(jù)時(shí),數(shù)據(jù)庫(kù)具有一定的隱密性和獨(dú)立性,確??蛻魯?shù)據(jù)安全。
2.1.3 基于C\S建設(shè)的系統(tǒng)前期投資較大
基于C\S建設(shè)的系統(tǒng)的核心時(shí)數(shù)據(jù)庫(kù),并且對(duì)數(shù)據(jù)庫(kù)的要求較高.高性能,運(yùn)算能力強(qiáng)的數(shù)據(jù)庫(kù)才能保證系統(tǒng)穩(wěn)定運(yùn)行。所以,系統(tǒng)建設(shè)前期要花費(fèi)一定資金購(gòu)買合適的數(shù)據(jù)庫(kù)。另外,系統(tǒng)如果要實(shí)現(xiàn)多地同時(shí)訪問(wèn)數(shù)據(jù)庫(kù),系統(tǒng)開(kāi)發(fā)人員要對(duì)各個(gè)地方的數(shù)據(jù)庫(kù)建立實(shí)時(shí)通訊連接,這個(gè)工作不僅費(fèi)時(shí)費(fèi)力,而且后期需要定期維護(hù);另一方面,基于C\S建設(shè)的系統(tǒng)要推出不同版本,使之能夠搭載在不同的操作系統(tǒng),客戶需求在不停的改變,導(dǎo)致系統(tǒng)更新?lián)Q代的速度也加快,總的來(lái)說(shuō),基于C\S建設(shè)的系統(tǒng)開(kāi)發(fā)代價(jià)較高。
2.2 B\S的優(yōu)勢(shì)與劣勢(shì)
易維護(hù),易升級(jí):社會(huì)的迅猛發(fā)展,使得客戶對(duì)應(yīng)用系統(tǒng)的功能需求也不斷變化、系統(tǒng)更新?lián)Q代的速度也在不斷加快?;贐\S結(jié)構(gòu)建設(shè)的系統(tǒng)能夠很好的應(yīng)對(duì)客戶需求。在基于B\S建設(shè)的系統(tǒng)中,所有的客戶端均是瀏覽器界面存在。而瀏覽器界面是由各個(gè)服務(wù)商提供,對(duì)于系統(tǒng)來(lái)說(shuō),客戶端界面是不需要自身去維護(hù),所有的維護(hù)和升級(jí)改造只需在服務(wù)器上進(jìn)行即可,極大的減少了系統(tǒng)維護(hù)人員的工作時(shí)間和工作量。所以,在信息化發(fā)展的進(jìn)程中,應(yīng)用系統(tǒng)的客戶端將會(huì)變得越來(lái)越簡(jiǎn)單,服務(wù)器的功能將會(huì)越來(lái)越強(qiáng)大。
開(kāi)發(fā)成本低:在個(gè)人電腦中,Windows操作系統(tǒng)獨(dú)占鰲頭。雖然近幾年蘋果公司推出的IOS系統(tǒng)取得了不錯(cuò)的成績(jī),但在短時(shí)間內(nèi)仍不能和Windows系統(tǒng)抗衡。但是,在服務(wù)器操作系統(tǒng)中,主流操作系統(tǒng)為L(zhǎng)inux。Linux操作系統(tǒng)不僅完全免費(fèi)使用,而且能夠?qū)崿F(xiàn)對(duì)數(shù)據(jù)庫(kù)的免費(fèi)鏈接。另外?;贐\S架構(gòu)建設(shè)的系統(tǒng)是能夠搭載在Linux之中。就目前發(fā)展趨勢(shì)來(lái)看,B\S架構(gòu)在系統(tǒng)開(kāi)發(fā)中受到了青睞。
數(shù)據(jù)庫(kù)運(yùn)行負(fù)荷較大:基于B\S結(jié)構(gòu)開(kāi)發(fā)的系統(tǒng),所有客戶端均是以瀏覽器界面的形式出現(xiàn)。在系統(tǒng)實(shí)際運(yùn)行過(guò)程中,瀏覽器界面只承擔(dān)一小部分邏輯運(yùn)算,大部分邏輯運(yùn)算由數(shù)據(jù)庫(kù),即服務(wù)器來(lái)完成。隨著系統(tǒng)訪問(wèn)人數(shù)不斷增加,服務(wù)器承擔(dān)的負(fù)荷將會(huì)逐漸提升。如果服務(wù)器發(fā)生故障,整個(gè)系統(tǒng)都將會(huì)崩潰。造成的損失難以估計(jì)。為了安全起見(jiàn),許多企業(yè)都會(huì)對(duì)系統(tǒng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行備份,防止意外發(fā)生。
3 企業(yè)使用安全先進(jìn)的產(chǎn)品
信息化發(fā)展是社會(huì)發(fā)展的主流方向。我國(guó)職能部門也在大力推進(jìn)信息化建設(shè)?;贐\S建設(shè)的系統(tǒng)符合信息化建設(shè)要求。各地的政府和企業(yè)只需要登錄到瀏覽器界面,使用Internet網(wǎng)或則是部門內(nèi)部的廣域網(wǎng),就能實(shí)現(xiàn)不同地點(diǎn)的檢察機(jī)關(guān)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)。在JAVA和Linu的支持下,B\S結(jié)構(gòu)的應(yīng)用前景更加廣泛。具體有以下幾個(gè)方面:
3.1 移動(dòng)辦公
政府和企業(yè)的工作人員無(wú)論在何時(shí)何地,只要個(gè)有一臺(tái)能夠上網(wǎng)的電腦,就可以在網(wǎng)上進(jìn)行辦公。
3.2 加強(qiáng)系統(tǒng)整合性
政府和企業(yè)的其他系統(tǒng),例如人力資源管理系統(tǒng),案件進(jìn)度檢測(cè)系統(tǒng)以及職工薪金管理系統(tǒng)等,這些系統(tǒng)只要采用相同的B\S結(jié)構(gòu)來(lái)建設(shè),便能夠?qū)崿F(xiàn)各個(gè)系統(tǒng)整合成一個(gè)系統(tǒng)。
參考文獻(xiàn)
[1]劉鵬,宋為,萬(wàn)俊.基于C/S與B/S架構(gòu)的科研項(xiàng)目管理系統(tǒng)[J].軟件導(dǎo)刊,2010(01).
[2]李建新.B/S與C/S在考勤系統(tǒng)中的復(fù)合應(yīng)用[J].中國(guó)管理信息化,2011(14).