文/王夙娟
在IT領(lǐng)域中,分層技術(shù)是軟件開發(fā)較為常用的一種方式,對(duì)該技術(shù)并沒有專業(yè)性的概念,但從字面上理解,就是給不同的層次結(jié)構(gòu)以不同的功能特性,借此來增強(qiáng)軟件的整體技術(shù)性能。目前,在計(jì)算機(jī)軟件架構(gòu)的開發(fā)過程中,分層技術(shù)的應(yīng)用較為廣泛,隨著人們對(duì)計(jì)算機(jī)軟件使用功能的要求越來越高,需要更多的框架層次,在這一前提下,分層技術(shù)出現(xiàn)了二層、三層、四層、五層等等。在分層技術(shù)當(dāng)中,各個(gè)層次都是平等的,彼此之間并沒有高低之分,每層都有自己的功能,互不影響,相互獨(dú)立。
分層技術(shù)之所以在計(jì)算機(jī)軟件開發(fā)中得到越來越廣泛的應(yīng)用,與其自身具備的技術(shù)優(yōu)勢(shì)有著密不可分的關(guān)聯(lián)。分層技術(shù)最為突出的技術(shù)優(yōu)勢(shì)在于可以使軟件的功能變得更加完善,這對(duì)于軟件的實(shí)際應(yīng)用非常有利。從專業(yè)的角度上講,功能越豐富的軟件,結(jié)構(gòu)就越復(fù)雜,這是一個(gè)共性問題,至少目前還沒有一種功能豐富、結(jié)構(gòu)簡(jiǎn)單的軟件問世,因?yàn)檫@種軟件的實(shí)現(xiàn)非常困難。軟件功能的增加帶來的直接結(jié)果就是結(jié)構(gòu)層次的復(fù)雜化,分層技術(shù)的出現(xiàn)將軟件按照一定的邏輯關(guān)系進(jìn)行分解,在原本的基礎(chǔ)上形成了若干個(gè)層面,其中任何一層都擁有屬于自己的功能,所有的層面組合到一起后,構(gòu)成了一個(gè)完整的軟件,而這個(gè)軟件具有各個(gè)層面的功能。由于軟件中各個(gè)層次相互分離,彼此獨(dú)立,若是使用者對(duì)某些功能有特殊要求時(shí),只需要對(duì)與該功能所在的層次進(jìn)行完善,即可滿足使用者的要求。不僅如此,這個(gè)過程不會(huì)軟件的其它層次和功能帶來影響,給軟件的升級(jí)改造提供了方便。分層技術(shù)在對(duì)各個(gè)功能層次的接口進(jìn)行定義時(shí),采用的是分層模式,這種模式最大的特點(diǎn)在于可以進(jìn)一步提升軟件的復(fù)用性,更加有利于軟件的自行開發(fā)和設(shè)計(jì),開發(fā)出來的功能可通過標(biāo)準(zhǔn)接口完成自動(dòng)對(duì)接,整個(gè)過程十分簡(jiǎn)單。
近年來,隨著互聯(lián)網(wǎng)的快速發(fā)展,其覆蓋范圍日益擴(kuò)大,依托互聯(lián)網(wǎng)這個(gè)平臺(tái),出現(xiàn)了很多服務(wù),網(wǎng)上購(gòu)物便是其中之一。下面本文以某網(wǎng)上購(gòu)物系統(tǒng)為例,該系統(tǒng)是在J2EE平臺(tái)上進(jìn)行構(gòu)建的,重點(diǎn)對(duì)分層技術(shù)在該系統(tǒng)軟件開發(fā)中的應(yīng)用進(jìn)行研究。
該系統(tǒng)采用的五層框架結(jié)構(gòu)體系,由客戶層、表示層、業(yè)務(wù)層、集成層和資源層,具體如圖1所示。
由圖1可以看出,整個(gè)系統(tǒng)由五個(gè)層次組成,不同的層次對(duì)應(yīng)不同的功能,其中,客戶層對(duì)應(yīng)的是用戶界面,表示層對(duì)應(yīng)的是HTTP服務(wù)器,業(yè)務(wù)層對(duì)應(yīng)的應(yīng)用服務(wù)器。集成層對(duì)應(yīng)的數(shù)據(jù)訪問服務(wù)器,資源層對(duì)應(yīng)的是數(shù)據(jù)存儲(chǔ)平臺(tái)。下面簡(jiǎn)要分析各個(gè)層次的功能。
在用戶界面上,頁面的顯示功能是通過客戶瀏覽器來實(shí)現(xiàn)的,客戶的具體請(qǐng)求能夠同時(shí)輸入,由于該層歸屬于客戶端系統(tǒng),因此,便于對(duì)用戶進(jìn)行維護(hù)和管理。網(wǎng)絡(luò)服務(wù)器負(fù)載均衡的主要作用是在服務(wù)器上對(duì)客戶發(fā)出的請(qǐng)求進(jìn)行分配,以此來對(duì)系統(tǒng)的功能進(jìn)行擴(kuò)充,若是其中存在的服務(wù)器端軟件無法在現(xiàn)有的進(jìn)程中得到分配,則可以通過增加服務(wù)器端軟件的方法,來分擔(dān)流量,以此來實(shí)現(xiàn)各個(gè)服務(wù)器端軟件的工作量相一致的目標(biāo),在這一前提下,整個(gè)系統(tǒng)的運(yùn)行才能始終保持最佳狀況。
HTTP服務(wù)器是具有動(dòng)態(tài)特征的頁面,這些頁面全部都是依托Web服務(wù)器形成的,最終會(huì)傳給客戶機(jī)。
應(yīng)用服務(wù)器是整個(gè)網(wǎng)上購(gòu)物系統(tǒng)的核心組成部分,網(wǎng)上購(gòu)物的相關(guān)流程及具體功能全部都是通過應(yīng)用服務(wù)器來實(shí)現(xiàn)的,如挑選商品、購(gòu)買商品、清點(diǎn)貨品等。
各種經(jīng)過處理之后的數(shù)據(jù)信息,可直接傳給訪問服務(wù)器,由于其本身自帶擴(kuò)展性,從而使之可以在各個(gè)服務(wù)器上進(jìn)行應(yīng)用。對(duì)于客戶狀態(tài)的維護(hù),需要借助EJB來完成。數(shù)據(jù)訪問服務(wù)器主要是對(duì)數(shù)據(jù)平臺(tái)進(jìn)行訪問,為提升該層的整體性能,可對(duì)連接池管理予以強(qiáng)化。
圖1:網(wǎng)上購(gòu)物系統(tǒng)框架層次結(jié)構(gòu)示意圖
智能化云存儲(chǔ)數(shù)據(jù)平臺(tái)歸屬于數(shù)據(jù)庫的范疇,系統(tǒng)中所有的相關(guān)數(shù)據(jù)信息最終都會(huì)存儲(chǔ)到該平臺(tái)當(dāng)中,主要包括各類物品的信息及用戶的信息。
由于網(wǎng)上購(gòu)物系統(tǒng)在運(yùn)行時(shí)需要完成并行業(yè)務(wù)的處理,故此在軟件開發(fā)中應(yīng)用了五層技術(shù),由此使得系統(tǒng)的擴(kuò)展能力獲得了進(jìn)一步提升,這也是該系統(tǒng)較為突出的一大特點(diǎn)??梢愿鶕?jù)實(shí)際使用需要在一臺(tái)或多臺(tái)服務(wù)器上對(duì)該系統(tǒng)進(jìn)行安裝,系統(tǒng)的維護(hù)簡(jiǎn)單,通過軟件開發(fā)語言可將之在不同的操作系統(tǒng)上應(yīng)用,并且無需對(duì)軟件進(jìn)行任何改動(dòng)。
綜上所述,計(jì)算機(jī)軟件的開發(fā)是一項(xiàng)較為復(fù)雜且系統(tǒng)的工作,為了實(shí)現(xiàn)軟件功能的多樣性,也才開發(fā)過程中對(duì)分層技術(shù)進(jìn)行合理應(yīng)用。通過該技術(shù)不但可以使軟件的開發(fā)工作變得更加簡(jiǎn)單,而且還能使開發(fā)出來的軟件滿足不同用戶的使用要求。
參考文獻(xiàn)
[1]盧娟.芻議計(jì)算機(jī)軟件開發(fā)中分層技術(shù)的應(yīng)用[J].電腦知識(shí)與技術(shù):學(xué)術(shù)交流,2014(9X):6371-6372.
[2]冷秀娟.計(jì)算機(jī)軟件開發(fā)中分層技術(shù)的應(yīng)用[J].數(shù)字技術(shù)與應(yīng)用,2015(03):166-166.
[3]李婷婷.計(jì)算機(jī)軟件開發(fā)中分層技術(shù)的應(yīng)用解析[J].電子技術(shù)與軟件工程,2017(09):58-58.