分布式站群系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
摘 要: 分析了高等院校構(gòu)建網(wǎng)站時(shí)遇到的普遍問題,提出了文件分布存儲(chǔ)、數(shù)據(jù)集中存儲(chǔ)的設(shè)計(jì)思想,并且在Java EE平臺(tái)上設(shè)計(jì)和實(shí)現(xiàn)了分布式站群管理系統(tǒng),其站點(diǎn)分布式部署、高度的代碼共享、內(nèi)嵌的網(wǎng)頁編輯器和多種類型的內(nèi)容管理使得高??梢钥焖?、靈活、方便地構(gòu)建自己的部門網(wǎng)站群,系統(tǒng)經(jīng)過一年多的運(yùn)行和完善,具有較大的應(yīng)用價(jià)值。
關(guān)鍵詞: 分布式站群; 內(nèi)容管理; 代碼共享; FCKeditor
高等院校經(jīng)常需要構(gòu)建多個(gè)網(wǎng)站,這些網(wǎng)站除了在欄目設(shè)置、頁面呈現(xiàn)風(fēng)格和具體內(nèi)容不同外,其他方面有很多共同之處,表現(xiàn)在欄目類型、內(nèi)容類型、發(fā)布方式、數(shù)據(jù)和文件的存儲(chǔ)、程序代碼開發(fā)等方面。若這些網(wǎng)站分別開發(fā),需要投入較大的人力,而且不易于統(tǒng)一管理。本文介紹一種基于Java EE平臺(tái)的分布式站群管理系統(tǒng),它可以使高校更容易地構(gòu)建自己的站群系統(tǒng),完成網(wǎng)站在多個(gè)物理服務(wù)器上的分布式部署。
1 系統(tǒng)特點(diǎn)
高校各部門的網(wǎng)站經(jīng)常部署在不同的物理服務(wù)器上,傳統(tǒng)的做法是每建立一個(gè)網(wǎng)站就要開發(fā)一套管理系統(tǒng),完成網(wǎng)站的用戶、權(quán)限和欄目管理,而且還要獨(dú)立開發(fā)網(wǎng)站內(nèi)容的發(fā)布平臺(tái)。這種做法對于構(gòu)建單站系統(tǒng)比較實(shí)用,若構(gòu)建站群系統(tǒng)則需要較大的代碼開發(fā)量,而且不利于集中管理。本文完成的分布式站群管理系統(tǒng)可以解決上述問題。它有以下特點(diǎn):
(1) 分布式部署
系統(tǒng)設(shè)計(jì)完成后,每構(gòu)建一個(gè)新網(wǎng)站,其后臺(tái)管理端、內(nèi)容發(fā)布端不需要重新開發(fā)代碼,只需要將相應(yīng)的共享代碼發(fā)布成獨(dú)立的應(yīng)用模塊直接部署,部署時(shí)根據(jù)需要可以選擇不同的物理服務(wù)器。
(2) 數(shù)據(jù)庫集中存儲(chǔ)
對于發(fā)布的文本內(nèi)容,系統(tǒng)集中存放在一臺(tái)或多臺(tái)物理機(jī)的數(shù)據(jù)庫中,這樣方便數(shù)據(jù)的檢索,而且易于管理和實(shí)施數(shù)據(jù)備份。
(3) 文件分布式存儲(chǔ)
發(fā)布內(nèi)容中上傳的圖片、文件、音視頻、Flash等附件會(huì)分布式地存放到網(wǎng)站對應(yīng)的物理服務(wù)器中,這樣使得各個(gè)網(wǎng)站的內(nèi)容發(fā)布者只能管理自己網(wǎng)站中上傳的內(nèi)容,減少了由于文件誤刪帶來的數(shù)據(jù)不一致。
(4) 高度的代碼共享性
系統(tǒng)設(shè)計(jì)了代碼共享包,使用開發(fā)工具生成符合Java EE規(guī)范的WAR包,部署網(wǎng)站時(shí)只需要將WAR包上傳到應(yīng)用服務(wù)器并進(jìn)行簡單的配置即可,共享包中包含了網(wǎng)站后臺(tái)管理系統(tǒng)和發(fā)布平臺(tái)的所有代碼,使得開發(fā)者省去了冗繁的重復(fù)開發(fā)。
(5) 基于標(biāo)簽的前臺(tái)開發(fā)
在開發(fā)網(wǎng)站前臺(tái)時(shí),基本上不需要Java代碼開發(fā),本系統(tǒng)設(shè)計(jì)了一套自定義標(biāo)簽,頁面設(shè)計(jì)人員只要熟悉標(biāo)簽的功能和使用方法,在系統(tǒng)需要讀取數(shù)據(jù)庫數(shù)據(jù)的地方嵌入自定義標(biāo)簽即可完成網(wǎng)站的動(dòng)態(tài)內(nèi)容顯示。
2 系統(tǒng)體系結(jié)構(gòu)和功能概述
總體上,系統(tǒng)包含后臺(tái)管理模塊、內(nèi)容管理模塊和各個(gè)部門的前臺(tái)網(wǎng)站。后臺(tái)管理模塊包括網(wǎng)站、欄目、用戶和權(quán)限管理;內(nèi)容管理模塊包括內(nèi)容發(fā)布、撤銷、修改和刪除等功能,它是整個(gè)系統(tǒng)設(shè)計(jì)的核心;前臺(tái)網(wǎng)站是向普通用戶呈現(xiàn)各個(gè)部門網(wǎng)站信息的平臺(tái),所有發(fā)布的內(nèi)容最終要正確地顯示到部門網(wǎng)站中才能供用戶正常瀏覽。系統(tǒng)功能模塊圖如圖1所示。