對于企業(yè)在選擇實驗室信息管理系統(tǒng)軟件時,是選擇B/S選擇C/S結(jié)構(gòu)?B/S和C/S結(jié)構(gòu)有什么區(qū)別?B/S和C/S各有哪些優(yōu)缺點?
C/S結(jié)構(gòu),即客戶機(jī)和服務(wù)器(Client/Server)結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢,將任務(wù)合理分配到Client端和Server端來實現(xiàn),降低了系統(tǒng)的通訊開銷。并且服務(wù)器端所承載的負(fù)荷也相對較輕,最簡單的c/s體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用由兩部分組成,即客戶應(yīng)用程序和數(shù)據(jù)庫服務(wù)器程序。二者可分別稱為前臺程序與后臺程序。運行數(shù)據(jù)庫服務(wù)器程序的機(jī)器,也稱為應(yīng)用服務(wù)器。一旦服務(wù)器程序被啟動,就隨時等待響應(yīng)客戶程序發(fā)來的請求;客戶應(yīng)用程序運行在用戶自己的電腦上,對應(yīng)于數(shù)據(jù)庫服務(wù)器,可稱為客戶端,當(dāng)需要對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行任何操作時,客戶程序就自動地尋找服務(wù)器程序,并向其發(fā)出請求,服務(wù)器程序根據(jù)預(yù)定的規(guī)則作出應(yīng)答,送回結(jié)果,這樣應(yīng)用服務(wù)器運行數(shù)據(jù)負(fù)荷較輕。
服務(wù)器端通常采用高性能的PC、工作站或小型機(jī),并采用大型數(shù)據(jù)庫系統(tǒng),如Oracle、SQL Server??蛻舳诵枰惭b專用的客戶端軟件。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu)。傳統(tǒng)的C/S體系結(jié)構(gòu)雖然采用的是開放模式,但這只是系統(tǒng)開發(fā)一級的開放性,在特定的應(yīng)用中無論是Client端還是Server端都需要特定的軟件支持。由于沒能提供用戶真正期望的開放環(huán)境,C/S結(jié)構(gòu)的軟件需要針對不同的操作系統(tǒng)系統(tǒng)開發(fā)不同版本的軟件。另外,采用c/s架構(gòu),要選擇適當(dāng)?shù)臄?shù)據(jù)庫平臺來實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的真正“統(tǒng)一”,使分布于兩地的數(shù)據(jù)同步完全交由數(shù)據(jù)庫系統(tǒng)去管理,但邏輯上兩地的操作者要直接訪問同一個數(shù)據(jù)庫才能有效實現(xiàn),這時就出現(xiàn)了一個問題,如果需要建立“實時”的數(shù)據(jù)同步,就必須在兩地間建立實時的通訊連接,保持兩地的數(shù)據(jù)庫服務(wù)器在線運行,網(wǎng)絡(luò)管理工作人員既要對服務(wù)器維護(hù)管理,又要對客戶端維護(hù)和管理,這需要高昂的投資和復(fù)雜的技術(shù)支持,維護(hù)成本高,維護(hù)任務(wù)量也大。
B/S結(jié)構(gòu),即瀏覽器/服務(wù)器(Browser/Server)結(jié)構(gòu),客戶機(jī)上只需裝有瀏覽器(Browser),如WINDOWS內(nèi)置的Internet Explorer,服務(wù)器安裝Oracle、SQL Server等數(shù)據(jù)庫。瀏覽器通過Web Server 同數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互。在這種結(jié)構(gòu)下,用戶界面完全通過www瀏覽器實現(xiàn),一部分事務(wù)邏輯在前端實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端實現(xiàn),形成所謂3-tier結(jié)構(gòu)。
3層結(jié)構(gòu)系統(tǒng)(3-tier system),在3層結(jié)構(gòu)系統(tǒng)中,將系統(tǒng)整體分為“客戶層”(用戶界面),“應(yīng)用層”(商用邏輯),“數(shù)據(jù)層”(數(shù)據(jù)庫)3層。在客戶端只留下用戶界面,其余均裝于服務(wù)器上。客戶端只受理用戶的操作與表示應(yīng)用層的處理結(jié)果。由于將應(yīng)用軟件部分與客戶端分離以及安裝于服務(wù)器上,在商用邏輯發(fā)生變更的情況,只須變更服務(wù)器端的應(yīng)用軟件便可,不會牽連到系統(tǒng)整體。
B/S架構(gòu)的網(wǎng)絡(luò)平臺不但可以在內(nèi)部網(wǎng)絡(luò)使用,而且在也可以在外部使用,如果在外部使用只要能上網(wǎng)就可以了,比較適合大型的、集團(tuán)式的公司使用,特別在不同的地點有公司或店面或需要使用這個平臺的用戶。而C/S結(jié)構(gòu)如果需要遠(yuǎn)端連接,公司就需要在各Site部署IPSec VPN來實現(xiàn)。
B/S架構(gòu)在實際應(yīng)用中多根據(jù)實際物理網(wǎng)絡(luò)進(jìn)行不同的物理劃分。
瀏覽器端:即用戶使用的瀏覽器,是用戶操作系統(tǒng)的接口,用戶通過瀏覽器界面向服務(wù)器端提出請求,并對服務(wù)器端返回的結(jié)果進(jìn)行處理并展示,通過界面可以將系統(tǒng)的邏輯功能更好的表現(xiàn)出來。
服務(wù)器端:提供數(shù)據(jù)服務(wù),操作數(shù)據(jù),然后把結(jié)果返回中間層,結(jié)果顯示在系統(tǒng)界面上。
中間件:這是運行在瀏覽器和服務(wù)器之間的。這層主要完成系統(tǒng)邏輯,實現(xiàn)具體的功能,接受用戶的請求并把這些請求傳送給服務(wù)器,然后將服務(wù)器的結(jié)果返回給用戶,瀏覽器端和服務(wù)器端需要交互的信息是通過中間件完成的。
目前,實驗室信息管理系統(tǒng)軟件的改進(jìn)和升級越來越頻繁,b/s架構(gòu)的產(chǎn)品明顯體現(xiàn)著更為方便的特性。對大企業(yè)來說,實驗室系統(tǒng)管理人員如果需要在幾百甚至上千部電腦之間來回奔跑,效率和工作量是可想而知的,但b/s架構(gòu)的軟件只需要管理服務(wù)器就行了,所有的客戶端只是運行瀏覽器,基本不需要做任何的維護(hù)。無論用戶的規(guī)模有多大,有多少分支機(jī)構(gòu)都不會增加任何維護(hù)升級的工作量,所有的操作只需要針對服務(wù)器進(jìn)行。
今后,實驗室信息管理系統(tǒng)軟件升級和維護(hù)會越來越容易,而使用起來會越來越簡單。