馬麗,封蕾
(榆林學(xué)院 陜西 榆林 719000)
基于MVC三層架構(gòu)的美術(shù)資源庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
馬麗,封蕾
(榆林學(xué)院 陜西 榆林 719000)
美術(shù)在各個(gè)國(guó)家的文化領(lǐng)域都有著舉足輕重的地位,也是一個(gè)國(guó)家文化的重要組成部分。隨著美術(shù)藝術(shù)家的逐漸增多,優(yōu)秀的作品也層出不窮。而喜愛欣賞美術(shù)作品的人們也是越來越多,下至上學(xué)的年輕學(xué)生,上至喜歡欣賞優(yōu)秀藝術(shù)的老年人。為了更好地管理美術(shù)作品,且方面廣大美術(shù)愛好者對(duì)作品進(jìn)行鑒賞,本文設(shè)計(jì)了基于MVC三層架構(gòu)的美術(shù)資源庫(kù),確定了該資源庫(kù)的系統(tǒng)功能,軟件的架構(gòu),并根據(jù)需求對(duì)系統(tǒng)的數(shù)據(jù)庫(kù)進(jìn)行了設(shè)計(jì),最后還根據(jù)實(shí)際需求對(duì)系統(tǒng)的安全性做了設(shè)計(jì)和測(cè)試,最終達(dá)到了設(shè)計(jì)要求。
資源庫(kù);MVC三層架構(gòu);UML建模;PHP框架
隨著科技的進(jìn)步以及信息化時(shí)代的來臨,一些藝術(shù)資源漸漸的以數(shù)字化的形式出現(xiàn)在我們面前,這些藝術(shù)資源都已資源庫(kù)的形式,通過網(wǎng)絡(luò)途徑來展現(xiàn)傳統(tǒng)藝術(shù)的魅力。該形式的特點(diǎn)就是將數(shù)據(jù)共享與多媒體服務(wù)合二為一,將傳統(tǒng)的,被動(dòng)的,機(jī)械的資源管理工作轉(zhuǎn)化為具有時(shí)代感的自動(dòng)化工作。本文以美術(shù)作品為主題,將知名的或者有意將作品放入庫(kù)中集中管理和欣賞的美術(shù)作品以電子資源庫(kù)平臺(tái)的形式,進(jìn)行了設(shè)計(jì)與開發(fā)。在保證了美術(shù)作品安全性的同時(shí),最大程度上方面了愛好者和欣賞者的觀賞。將數(shù)字化技術(shù)與傳統(tǒng)的美術(shù)很好地結(jié)合了起來。所謂數(shù)字化就是以數(shù)字化技術(shù)為基礎(chǔ),利用數(shù)字采集,數(shù)據(jù)處理,數(shù)據(jù)分析,數(shù)據(jù)展示,數(shù)據(jù)存儲(chǔ)等技術(shù)將傳統(tǒng)的美術(shù)作品進(jìn)行提取,轉(zhuǎn)換和再現(xiàn),最終實(shí)現(xiàn)共享和可循環(huán)的傳播方式,并提高了藝術(shù)品的安全性[1-2]。在數(shù)字化技術(shù)沒有得到廣泛推廣之前,傳統(tǒng)的美術(shù)作品欣賞最多的也只是采用的數(shù)字錄像的方式,雖然這種方式在一段時(shí)間內(nèi)也起到了積極地作用,但是隨著數(shù)字化時(shí)代的到來,對(duì)設(shè)備的要求也越來越高,其更新程度也越來越快,傳統(tǒng)的方式很明顯已經(jīng)無法滿足現(xiàn)實(shí)的需求。其中比較明顯的問題就是資料大量堆積,錄像設(shè)備由于技術(shù)含量不高,保存起來會(huì)很困難,容易由于老化造成資料遺失。還有就是在查找時(shí),有時(shí)需要花費(fèi)大量的人力物力。這些問題和缺陷都導(dǎo)致了傳統(tǒng)方法需要被新的更好的方法所替代。隨著信息技術(shù)的快速發(fā)展,數(shù)字化的采集處理也從簡(jiǎn)單的有文字,圖像等的采集轉(zhuǎn)化為高精度,高穩(wěn)定度的三維化方式發(fā)展,超高精度的圖及形圖像技術(shù)和設(shè)備也應(yīng)運(yùn)而出,這些設(shè)備和技術(shù)在對(duì)美術(shù)作品的保存上,提供了最強(qiáng)大的技術(shù)支持[3-4]。
所謂PHP框架就是提供一個(gè)可以開發(fā)網(wǎng)絡(luò)程序的基本結(jié)構(gòu),該框架可以將網(wǎng)絡(luò)結(jié)構(gòu)程序的開發(fā)放到流水線上。通俗的來說就是PHP開發(fā)框架可以大大減少軟件開發(fā)需要使用的時(shí)間,并且可以保證程序完成后的穩(wěn)定性和安全性,還能有效的減少代碼編寫者的工作量。
這些框架還能保證數(shù)據(jù)庫(kù)操作的正確性以及只在數(shù)據(jù)處理層編程的方式,幫助剛接觸此類結(jié)構(gòu)的初學(xué)人員創(chuàng)建正確的程序[5]。PHP的開發(fā)框架可以讓開發(fā)者將有效的時(shí)間用在網(wǎng)絡(luò)程序的開發(fā)和完善上,而不是單一的代碼的重復(fù)編寫。而其中“模型—視圖—控制器”(MVC)是 PHP開發(fā)框架也是本文設(shè)計(jì)系統(tǒng)的核心思想,在MVC中,數(shù)據(jù)由系統(tǒng)的模型提供,顯示裝置由視圖提供,程序的主題是由控制器總體負(fù)責(zé)的。MVC通??梢愿鶕?jù)系統(tǒng)需求主動(dòng)性的控制應(yīng)用程序的輸入、輸出、以及處理等模式,但其在作為應(yīng)用程序被應(yīng)用時(shí)則被有效的分成了3部分,這3部分獨(dú)立且高效的運(yùn)行著。分別為模型、視圖、控制器。換種方式敘述可能更能加深對(duì)此的認(rèn)識(shí),MVC中3個(gè)應(yīng)用程序的部件是相互獨(dú)立的,其中任何一個(gè)發(fā)生任何變化對(duì)其余的兩個(gè)都不會(huì)造成任何影響。其結(jié)構(gòu)如圖1所示。從本質(zhì)上來說,MVC將一個(gè)程序的設(shè)計(jì)和開發(fā)過程分成了幾個(gè)部分,這樣就可以從每個(gè)獨(dú)立的部分入手進(jìn)行設(shè)計(jì)和修改,而其余部分不受影響。這個(gè)設(shè)計(jì)細(xì)節(jié)非常重要,其使得代碼的編寫更加靈活且簡(jiǎn)單。而框架組織的實(shí)現(xiàn)主要依靠的是系統(tǒng)模塊、顯示模塊和數(shù)據(jù)模塊3大單元模塊構(gòu)成,同時(shí)良好的平臺(tái)以及相應(yīng)的拓展模塊在框架的構(gòu)造時(shí)也是必不可少的。系統(tǒng)的平臺(tái)主要指的是PHP開發(fā)環(huán)境以及PHP運(yùn)行之環(huán)境。系統(tǒng)的顯示模塊和數(shù)據(jù)庫(kù)模塊由框架本身提供,它們的作用是對(duì)現(xiàn)有的PHP代碼資源進(jìn)行收集、檢驗(yàn)和調(diào)取,并提供非常方便的接口和調(diào)用函數(shù)給PHP開發(fā)者。顯示模塊和數(shù)據(jù)庫(kù)模塊可以對(duì)程序開發(fā)者透明,程序開發(fā)者對(duì)其中的運(yùn)行、檢驗(yàn)及調(diào)取情況不需理解,只要根據(jù)框架提供的接口及調(diào)用函數(shù),就能夠完成程序控制與運(yùn)行[6]。
圖1 MVC架構(gòu)的分層體系
資源庫(kù)的性能是設(shè)計(jì)的關(guān)鍵,而對(duì)資源庫(kù)性能造成影響的因素有很多,比如主機(jī),寄存器,數(shù)據(jù)庫(kù),網(wǎng)絡(luò),傳輸途徑等等,所以在對(duì)資源庫(kù)進(jìn)行設(shè)計(jì)和規(guī)劃的時(shí)候,不僅要充分考慮到這些因素還要考慮到這些因素間的兼容性。資源庫(kù)在建設(shè)時(shí),還要考慮其運(yùn)行以及維護(hù)的過程,在此過程中盡可能的對(duì)其進(jìn)行優(yōu)化,滿足客戶以及實(shí)際情況中不斷升高的需求。
在資源庫(kù)的各個(gè)性能指標(biāo)中最為重要的就是平均響應(yīng)時(shí)間這個(gè)指標(biāo),而所謂平均響應(yīng)時(shí)間指的是在使用者提交申請(qǐng)開始計(jì)時(shí)到資源庫(kù)返回結(jié)果的整個(gè)時(shí)間段。本文基礎(chǔ)是資源庫(kù)MVC的三層架構(gòu),所謂三層架構(gòu)模式就是模型(model)—視圖(view)—控制器(controller)的三層架構(gòu),即經(jīng)典的MVC模式[8-9]。層架構(gòu)的優(yōu)勢(shì)和特點(diǎn)就是分層技術(shù)的運(yùn)用,每一層都有其獨(dú)立的功能并且獨(dú)立開發(fā)和使用,這就使資源庫(kù)在設(shè)計(jì),開發(fā),維護(hù)以及安全性上都有了很大的提高。三層架構(gòu)體現(xiàn)了“高內(nèi)聚、低耦合”的系統(tǒng)結(jié)構(gòu),該模式的示意圖如圖2所示。表示層的作用是將使用者提供的數(shù)據(jù)輸入到接口中去并將資源率反饋回來的數(shù)據(jù)在顯示界面上顯示出來。業(yè)務(wù)邏輯層的主要作用是接收表示層傳過來的任務(wù)請(qǐng)求,并對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證,存儲(chǔ),以及處理。保證資源庫(kù)的安全性,穩(wěn)定性和可靠性,保證傳輸中的數(shù)據(jù)在各個(gè)層之間有序有效安全的進(jìn)行傳輸[10-11]。數(shù)據(jù)訪問層的作用是對(duì)資源庫(kù)的應(yīng)用與數(shù)據(jù)庫(kù)進(jìn)行交互和聯(lián)絡(luò),對(duì)通過業(yè)務(wù)邏輯層判斷后,對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問與增刪改查等操作由該層負(fù)責(zé)。
圖2 資源庫(kù)開發(fā)模式示意圖
資源庫(kù)主要分為兩類用戶,其都可通過互聯(lián)網(wǎng)對(duì)服務(wù)器進(jìn)行訪問,使用者的請(qǐng)求經(jīng)過服務(wù)器的處理后,將數(shù)據(jù)存儲(chǔ)在服務(wù)器中,并將處理后的信息反饋給使用者,其物理架構(gòu)如圖3所示。資源庫(kù)采用的是B/S模式架構(gòu)體系。為了使用戶界面實(shí)現(xiàn)簡(jiǎn)潔,實(shí)用,統(tǒng)一等功能,表現(xiàn)層的資源庫(kù)統(tǒng)一采用微軟公司的IE瀏覽器作為操作界面,這樣的設(shè)計(jì),同時(shí)也對(duì)資源庫(kù)以后的升級(jí)改造提供了便利[12]。而網(wǎng)頁服務(wù)器則是對(duì)數(shù)據(jù)的傳輸和收集以及最后的顯示起著重要的作用,并對(duì)使用者提出的所有請(qǐng)求作出響應(yīng)和處理,并負(fù)責(zé)后臺(tái)業(yè)務(wù)的調(diào)用工作。業(yè)務(wù)層是執(zhí)行實(shí)際業(yè)務(wù)規(guī)則以及數(shù)據(jù)處理的部分。業(yè)務(wù)層負(fù)責(zé)將業(yè)務(wù)規(guī)則應(yīng)用于相關(guān)數(shù)據(jù),經(jīng)處理后的數(shù)據(jù)返回給客戶端,用來實(shí)現(xiàn)用戶通過表示層發(fā)出的業(yè)務(wù)請(qǐng)求。數(shù)據(jù)層為資源庫(kù)各種數(shù)據(jù)提供了一個(gè)存放的地點(diǎn),資源庫(kù)中的所有數(shù)據(jù)及資料都存放于此,并對(duì)這些數(shù)據(jù)和資料進(jìn)行統(tǒng)一的規(guī)劃和處理。系統(tǒng)的前臺(tái)使用使用MySql數(shù)據(jù)庫(kù)來實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ),并使用 MySql來對(duì)資料及數(shù)據(jù)的安全性,完善性以突發(fā)情況下對(duì)資料數(shù)據(jù)的保護(hù)性進(jìn)行保證和監(jiān)護(hù)。MySql數(shù)據(jù)庫(kù)系統(tǒng)相對(duì)于一般數(shù)據(jù)庫(kù)來說具有完善的安全保護(hù)以及突發(fā)情況預(yù)警及處理的控制措施,對(duì)系統(tǒng)的穩(wěn)定性及安全性有著充分的保障。資源庫(kù)設(shè)計(jì)中最重要的就是數(shù)據(jù)庫(kù)的設(shè)計(jì),在本數(shù)據(jù)庫(kù)的設(shè)計(jì)中,設(shè)計(jì)主要涵蓋了以下幾部分內(nèi)容。首先是數(shù)據(jù)庫(kù)及數(shù)據(jù)庫(kù)使用對(duì)象的命名,其次是數(shù)據(jù)庫(kù)的完整性的設(shè)計(jì),下面是數(shù)據(jù)庫(kù)容量的設(shè)計(jì)和規(guī)劃,最后也是比較重要的數(shù)據(jù)庫(kù)的安全性設(shè)計(jì)。在設(shè)計(jì)時(shí)字段與主鍵的唯一性和確定性也必須得到保障,通過主鍵保證每一行都具有唯一性,從而達(dá)到實(shí)現(xiàn)完整性實(shí)體的目的。而保證各輔表外鍵與主表主鍵的從屬關(guān)系的一致性,則是通過定義輔表與主表之間的外鍵和主鍵的關(guān)系來實(shí)現(xiàn)[13-14]。
圖3 系統(tǒng)物理架構(gòu)圖
本系統(tǒng)性能測(cè)試的主要指標(biāo)分別是:系統(tǒng)的即時(shí)響應(yīng)能力,即資源庫(kù)在任意使用狀態(tài)下的響應(yīng)時(shí)間;其次是資源庫(kù)的吞吐率,即資源庫(kù)在任意使用狀態(tài)下所能完成的操作數(shù)量。最后是資源庫(kù)的負(fù)載能力,即資源庫(kù)可以容納最大用戶的數(shù)量。本美術(shù)資源庫(kù)的性能測(cè)試,就是要查看資源庫(kù)在并發(fā)壓力下的并發(fā)用戶數(shù)和在較大壓力下資源庫(kù)的處理能力,并找出各類操作的性能瓶頸[15]。測(cè)試工具為 LoadRunner,測(cè)試數(shù)據(jù)的準(zhǔn)備主要就是系統(tǒng)在登錄時(shí)所需要的賬號(hào)即相關(guān)資源的信息,核心思想就是利用模擬的用戶來實(shí)現(xiàn)真實(shí)的對(duì)資源庫(kù)使用時(shí)造成的壓力。方式采用的是逐步加壓,每10秒增加兩個(gè)模擬用戶,模擬用戶共設(shè)定為50人,用戶啟動(dòng)信息如圖3所示:其中粒度為15秒,從圖中可直觀的看出,底值為0.534次/秒,峰值為6.356次/秒,中間值為2.856次/秒,平均值為 3.097次/秒,圖標(biāo)準(zhǔn)偏差值為1.266。測(cè)試結(jié)果表明,資源庫(kù)在模擬大量虛擬用戶操作資源庫(kù)中,資源庫(kù)整體表現(xiàn)比較流暢,再運(yùn)行一段時(shí)間后,當(dāng)用戶數(shù)量逐漸增大,偶爾會(huì)提示出現(xiàn)錯(cuò)誤的警告。在吞吐量較大的情況下資源庫(kù)響應(yīng)趕時(shí)間大部分符合要求,但部分響應(yīng)時(shí)間反應(yīng)較長(zhǎng),但對(duì)系統(tǒng)的總體性能并不造成影響。
圖4 用戶信息圖
文中在充分研究了現(xiàn)如今美術(shù)資源作品在管理及保存上面臨的一系列問題的基礎(chǔ)上,提出并設(shè)計(jì)了基于MVC三層架構(gòu)的美術(shù)資源庫(kù)的設(shè)計(jì),通過如今流行的軟件開發(fā)的模式,將傳統(tǒng)藝術(shù)與當(dāng)代科技結(jié)合起來。對(duì)資源庫(kù)的框架及組成,性能及架構(gòu)需求以及資源庫(kù)的總體設(shè)計(jì)進(jìn)行了詳細(xì)的介紹及分析,最后對(duì)資源庫(kù)的性能進(jìn)行了測(cè)試,測(cè)試的結(jié)果顯示,該資源庫(kù)設(shè)計(jì)符合要求,達(dá)到了設(shè)計(jì)需求。
[1]王毅.中國(guó)民族民間工藝美術(shù)論[M].太原:山西教育出版社,2000.
[2]肖豐,陳曉娟,李會(huì).民間美術(shù)與文化創(chuàng)意產(chǎn)業(yè)[M].武漢:華中師范大學(xué)出版社,2012.
[3]唐瓊,張玫.“美國(guó)記憶”與“共享工程”比較研究[J].圖書館理論與實(shí)踐,2006(1):12-13.
[4]胡鵬.云南民族民間工藝品多媒體庫(kù)創(chuàng)建研究 [D].昆明:昆明理工大學(xué),2005.
[5]張聰,張慧.信息可視化研究 [J].武漢工業(yè)學(xué)院學(xué)報(bào),2006,25(3):33-35.
[6]胡之武.基于GIS電網(wǎng)運(yùn)行數(shù)據(jù)可視化的方法與研究[D].浙江大學(xué),2005.
[7]韋艷麗.多媒體設(shè)計(jì)[M].北京:北京理工大學(xué)出版社,2006.
[8]劉宇祥.PHP流行開發(fā)框架的研究[J].青春歲月,2012(8): 22-23.
[9]苑潔.軟件學(xué)院工程碩士論文過程管理系統(tǒng)的分析與測(cè)試[D].北京:北京郵電大學(xué),2010.
[10]馮雙玲.信息可視化技術(shù)在圖書館公共檢索系統(tǒng)中的應(yīng)用[J].電子技術(shù),2012,39(9):32-36.
[11]鄭國(guó)權(quán).鄉(xiāng)鎮(zhèn)綜合信息數(shù)字化服務(wù)平臺(tái)建設(shè)設(shè)計(jì)與研究[D].重慶:重慶大學(xué),2008.
[12]胡莉莉.基于 IRUP的軟件測(cè)試方法的研究與應(yīng)用[D].武漢:武漢理工大學(xué),2007.
[13]康賢昆.PHP開發(fā)框架的研究與實(shí)現(xiàn)[D].天津:天津大學(xué),2007.
[14]劉曉華,陳亞強(qiáng).J2EE應(yīng)用開發(fā)詳解[M].北京:電子工業(yè)出版社,2004.
[15]李勇,付志勇.計(jì)算機(jī)藝術(shù)設(shè)計(jì)[M].北京:中國(guó)紡織出版社,1998.
Based on the MVC triple-layer structure art design and implementation of repository
MA Li,F(xiàn)ENG Lei
(Yulin University,Yulin 719000,China)
Arts and culture in different countries has a pivotal position,is also an important part of national culture.With fine arts artists gradually rise,excellent works of literature and art also emerge in endlessly.And love to be more and more people appreciate the art works,down to the young students to go to school,to enjoy the fine art of the elderly.In order to better manage the works of fine art,and the art lovers to appreciate works in this paper,based on the MVC three-tier architecture art repository,determine the function of the repository of the system,software architecture,and designs a database model according to the requirements of the system,finally according to the actual demand for the security of the system design and test,finally reached the design requirements.
resource database;MVC triple-layer structure;UML modeling;PHP framework
TP
A
1674-6236(2016)15-0085-03
2016-01-25 稿件編號(hào):201601227
馬 麗(1978—),女,陜西榆林人,講師。研究方向:美術(shù)教育。