來(lái)源:無(wú)錫網(wǎng)站建設(shè)阿凡達(dá) 瀏覽次數(shù):314 發(fā)表日期:2023-05-17
介紹網(wǎng)站的體系架構(gòu)相關(guān)知識(shí),在現(xiàn)階段,使用較多的兩層體系架構(gòu)是基于C/S的。
1)基于C/S的兩層體系架構(gòu)簡(jiǎn)介
基于C/S的兩層體系架構(gòu),是將邏輯上的三層結(jié)構(gòu)物理的分隔成兩層,組成“客戶機(jī)/服務(wù)器”(Client/ Server)的體系架構(gòu),這是一種軟件系統(tǒng)體系結(jié)構(gòu),通過(guò)這個(gè)系統(tǒng)可以保證對(duì)兩端硬件環(huán)境的充分利用,將任務(wù)在 Client端端和 Server端進(jìn)行合理的分配,它主要應(yīng)用于局域網(wǎng)中。基于C/S的兩層體系架構(gòu)可以將表示層和商務(wù)邏輯層組合到客戶層中,而將數(shù)據(jù)層作為一個(gè)獨(dú)立的層面放到服務(wù)器端,構(gòu)成數(shù)據(jù)庫(kù)層,從而形成“胖”客戶端、“瘦”服務(wù)器端的C/S架構(gòu)。
2)基于C/S的兩層體系架構(gòu)的運(yùn)行原理
在這種兩層C/S架構(gòu)下,當(dāng)用戶需要訪問(wèn)數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)時(shí),由客戶機(jī)的應(yīng)用程序通過(guò)網(wǎng)絡(luò)向數(shù)據(jù)庫(kù)服務(wù)器發(fā)送查詢服務(wù)請(qǐng)求,數(shù)據(jù)庫(kù)服務(wù)器則根據(jù)客戶機(jī)的服務(wù)請(qǐng)求自動(dòng)完成查詢?nèi)蝿?wù),然后通過(guò)網(wǎng)絡(luò)再將查詢結(jié)果返回給客戶機(jī)。在這個(gè)過(guò)程中,客戶機(jī)與數(shù)據(jù)庫(kù)服務(wù)器之間只需要傳輸服務(wù)請(qǐng)求與查詢結(jié)果,而不需要傳輸任何數(shù)據(jù)庫(kù)文件。
客戶機(jī)和數(shù)據(jù)庫(kù)服務(wù)器是直接相連的,這兩個(gè)組成部分都承擔(dān)著重要的角色,客戶機(jī)并不是只有輸入輸出、運(yùn)算、發(fā)送請(qǐng)求、接收結(jié)果等功能,它還具有處理一些計(jì)算、數(shù)據(jù)存儲(chǔ)等方面的業(yè)務(wù)邏輯事務(wù)的功能;數(shù)據(jù)庫(kù)服務(wù)器主要承擔(dān)事務(wù)邏輯的處理工作,在客戶機(jī)可以分擔(dān)一些邏輯事務(wù)的情況下,在一定程度上減輕了服務(wù)器的運(yùn)行負(fù)擔(dān),使得網(wǎng)絡(luò)流量增多,提高了用戶數(shù)量與服務(wù)質(zhì)量。
在基于CS的兩層體系架構(gòu)中,也可以將商務(wù)邏輯層的一部分和數(shù)據(jù)層組合到服務(wù)器端,從而形成“瘦”客戶端、“胖”服務(wù)器端的C/S架構(gòu)。
3)基于C/S的兩層體系架構(gòu)的優(yōu)點(diǎn)和缺點(diǎn)
在計(jì)算機(jī)技術(shù)發(fā)展如此迅速的今天,C/S的兩層體系架構(gòu)仍能夠屹立不倒,可見(jiàn)其與其他架構(gòu)技術(shù)相比,有自身獨(dú)特的優(yōu)勢(shì),這些優(yōu)勢(shì)包括:
(1)點(diǎn)對(duì)點(diǎn)
客戶端和服務(wù)器直接相連,構(gòu)成了一種點(diǎn)對(duì)點(diǎn)的模式,用戶在客戶端就可以獲取一些重要的信息,而不需通過(guò)中間層的傳輸與運(yùn)算,從而減少了獲取信息的時(shí)間和精力,減少了通信流量從而節(jié)省了費(fèi)用,增加了響應(yīng)速度與工作效率。
(2)設(shè)備利用率提高
將一些邏輯事務(wù)交于客戶機(jī)來(lái)處理,增加了客戶端和數(shù)據(jù)庫(kù)服務(wù)器端的硬件使用率,或少了資源的浪費(fèi),從而充分利用了兩端設(shè)備;客戶機(jī)為服務(wù)器分擔(dān)了一些邏輯事務(wù),除了基本的數(shù)據(jù)傳輸外,還可進(jìn)行數(shù)據(jù)處理和數(shù)據(jù)存儲(chǔ)以及一些復(fù)雜的事務(wù)流程;客戶機(jī)有一套完整的應(yīng)用程序,在出錯(cuò)提示、在線幫助等方面都有強(qiáng)大的功能,并且可以在子程序間自由切換。
(3)個(gè)性化
客戶端的操作界面可以提高客戶的視覺(jué)體驗(yàn),滿足客戶的各種基本需求??蛻舳瞬僮鹘缑婵呻S意排列,充分滿足客戶的需要,展現(xiàn)特點(diǎn)與個(gè)性。
除了具有這些優(yōu)點(diǎn)之外,不可避免的這種架構(gòu)還具有一些不足,或者說(shuō)是自身架構(gòu)所具有的弊端。
(1)安全性降低
將客戶機(jī)與服務(wù)器直接相連,在一定程度上降低了系統(tǒng)的安全性。C/S結(jié)構(gòu)的軟件必須在各地安裝多個(gè)服務(wù)器,并在多個(gè)服務(wù)器之間進(jìn)行數(shù)據(jù)同步。如此一來(lái),每個(gè)數(shù)據(jù)點(diǎn)上的數(shù)據(jù)安全都影響了整個(gè)應(yīng)用的數(shù)據(jù)安全。
(2)適用面窄
通常用于局域網(wǎng)中,這大大限制了系統(tǒng)的使用范圍與影響的廣泛性。不利于市場(chǎng)的開(kāi)拓與創(chuàng)新。
(3)成本較高
基于C/S的兩層體系結(jié)構(gòu)的網(wǎng)站開(kāi)發(fā),不論是前期的開(kāi)發(fā)費(fèi)用還是后期的維護(hù)成本都是非常高昂的。在前期開(kāi)發(fā)中,需要聘用高素質(zhì)的工作人員,并對(duì)其進(jìn)行培訓(xùn)和教育,這些費(fèi)用是非常高的;初次開(kāi)發(fā)需要配備高性能的客戶機(jī)和服務(wù)器,這就需要有高專業(yè)水準(zhǔn)的技術(shù)人員,所以成本是很高的。在后期的系統(tǒng)維護(hù)中,升級(jí)維護(hù)工作、業(yè)務(wù)擴(kuò)展或變更、客戶端界面的重新調(diào)整等都是很麻煩的,需要對(duì)大量程序進(jìn)行更改,投入的精力和金錢也是不容忽視的。
(4)用戶受限
基于C/S的兩層體系結(jié)構(gòu)對(duì)用戶的身份進(jìn)行了限制,網(wǎng)站建設(shè)只有安裝了客戶端的用戶才能夠進(jìn)行訪問(wèn),并且由于受數(shù)據(jù)庫(kù)的限制,用戶的數(shù)量也是不易擴(kuò)展的。用戶范圍過(guò)小,不利于網(wǎng)站的進(jìn)一步發(fā)展。
如今,基于C/S的兩層體系架構(gòu)的應(yīng)用仍十分廣泛,從辦公的Office,WPS,WINRAR到到殺毒軟件(如金山、瑞金)再到娛樂(lè)軟件(如播放器,QQ,微信等)無(wú)處不見(jiàn)C/S架構(gòu)。
技術(shù)熱線
400-189-1319
添加微信