摘要:隨著學(xué)生人數(shù)的增長,選課管理系統(tǒng)性能方面的需求尤為突出。我們首先分析了它在性能方面的需求,然后提出了采用分布式WEB服務(wù)器集群技術(shù)提高系統(tǒng)性能的方案,最后對(duì)方案進(jìn)行實(shí)現(xiàn),并取得了良好的效果。
關(guān)鍵詞:選課管理系統(tǒng);性能;集群
中圖分類號(hào):TP393文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2008)15-20ppp-0c
Study Performance of the Elective Management System
LIANG Jing-min
(Guangdong Woman Vocational and TechnicalCollege, Guangzhou 511450, China)
Abstract: With the increase in the number of students, performance demand of the elective management system is even more conspicuous. First analyze its performance in the demand, and proposed solution of use of Distributed WEB server cluster technology to improve system performance, and the final realization of the program, and have achieved good results.
Key words: Course Management System; performance; clustering
1 引言
隨著教育信息化的發(fā)展,越來越多的高校都建立了自己的校園網(wǎng),并采用了教務(wù)管理系統(tǒng)來管理學(xué)校的信息資源。通過使用教務(wù)管理系統(tǒng)提高了教務(wù)管理人員以及師生員工的工作效率。但是,隨著學(xué)校不斷擴(kuò)招和各種應(yīng)用需求不斷增長,對(duì)教務(wù)管理系統(tǒng)的性能和服務(wù)質(zhì)量提出了更高的要求。尤其是選課管理系統(tǒng),它是教務(wù)管理系統(tǒng)的核心部分,它的性能要求尤為重要。
2 選課管理系統(tǒng)的性能分析
選課管理系統(tǒng)在功能上已經(jīng)滿足了實(shí)際應(yīng)用的需求,但是系統(tǒng)的性能問題還有待提高。系統(tǒng)在實(shí)際的使用中主要存在如下幾個(gè)問題:
(1)隨著高校招生規(guī)模的不斷擴(kuò)大,學(xué)生人數(shù)越來越多,雖然系統(tǒng)可以滿足目前的需求,但不能保證當(dāng)學(xué)生人數(shù)進(jìn)一步增加以后仍然能夠提供可靠的服務(wù)。
(2)雖然通過采取分時(shí)間段選課的方式保證了系統(tǒng)在選課高峰時(shí)期的可用性,但是這些措施也存在一定的問題。采用分時(shí)間段的方式在時(shí)間上可以分散負(fù)載量,但在規(guī)定選課時(shí)間的開始一段時(shí)間內(nèi)仍然有大量用戶同時(shí)訪問,仍然會(huì)造成響應(yīng)遲鈍或者無法登錄的狀況。
因此為提高系統(tǒng)的易用性和適應(yīng)能力,我們必須采用一定的措施對(duì)選課系統(tǒng)的性能進(jìn)行優(yōu)化。
3 選課管理系統(tǒng)性能提高的設(shè)計(jì)
性能提高的方案有很多,可以在軟件和硬件兩個(gè)方面來進(jìn)行優(yōu)化。本文結(jié)合選課系統(tǒng)的特點(diǎn),采用分布式WEB服務(wù)器集群的方案來改進(jìn)系統(tǒng)的性能。
3.1 集群系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)
分布式Web服務(wù)器集群的核心思想是將負(fù)載分配的功能分布到集群系統(tǒng)的每個(gè)節(jié)點(diǎn)服務(wù)器中,從而避免單臺(tái)負(fù)載調(diào)度器產(chǎn)生的瓶頸問題。在集群系統(tǒng)中采用了基于第四層交換和基于IPVS調(diào)度器的兩級(jí)負(fù)載均衡機(jī)制。系統(tǒng)的體系結(jié)構(gòu)如圖1所示。

3.2 集群系統(tǒng)的工作流程設(shè)計(jì)
根據(jù)集群系統(tǒng)的結(jié)構(gòu)特點(diǎn),我們?cè)O(shè)計(jì)了集群系統(tǒng)的工作流程,通過采用兩級(jí)負(fù)載均衡方式更好地提高選課系統(tǒng)的性能。在集群系統(tǒng)的工作流程中,首先客戶端使用IP-SVA訪問系統(tǒng),DNS服務(wù)器將請(qǐng)求映射到前端交換機(jī),然后交換機(jī)按照一定的規(guī)則將請(qǐng)求轉(zhuǎn)發(fā)到后端的某節(jié)點(diǎn)服務(wù)器進(jìn)行分配,接著執(zhí)行分配功能的節(jié)點(diǎn)服務(wù)器調(diào)用負(fù)載分配程序,將訪問請(qǐng)求轉(zhuǎn)發(fā)到最佳的Web服務(wù)器進(jìn)行處理,最后被選中的Web服務(wù)器處理HTTP請(qǐng)求,并將響應(yīng)結(jié)果發(fā)送回客戶端。集群的工作流程如圖2所示。

4 選課管理系統(tǒng)性能提高的實(shí)現(xiàn)
通過分布式WEB服務(wù)器集群來實(shí)現(xiàn)選課系統(tǒng)的性能提高中,我們主要從負(fù)載調(diào)度器、節(jié)點(diǎn)服務(wù)器配置和存儲(chǔ)共享三個(gè)方面來實(shí)現(xiàn)。系統(tǒng)實(shí)現(xiàn)的核心代碼如下所示:
int selectnode (double progress[],double weight[], int n)
{int i = 0;
int t = 0; //定義返回值
double min = 0.1;
for(int j=0; j {if(weight[j] > 0) {i = j; break; } } if(i>=n) return -1; min = progress[i]/weight[i]; t = i; i = i + 1; for(int j=i; j { if(weight[j] > 0 progress[j]/weight[j] < min) { min = progress[i]/weight[i]; t = j; } } return t; } 5 小結(jié) 本文通過把分布式WEB服務(wù)器集群技術(shù)引入到選課管理系統(tǒng)中,有效的提高了選課管理系統(tǒng)的性能,但是由于時(shí)間倉促,系統(tǒng)在應(yīng)用中還有很多地方值得我們?cè)僮鲞M(jìn)一步的深入研究。 參考文獻(xiàn): [1] [美]Rajkumar Buyya,著,鄭維民,等,譯.高性能集群計(jì)算結(jié)構(gòu)與系統(tǒng)[M].電子工業(yè)出版社.2001.580-601. [2] 薛軍,李增智,王云嵐.負(fù)載均衡技術(shù)的發(fā)展[J].小型微型計(jì)算機(jī)系統(tǒng),2003,24(12):2100-2103. [3] 王幫海,李振坤,陳平華,等.基于分散校區(qū)和完全學(xué)分制的網(wǎng)絡(luò)化教務(wù)管理系統(tǒng)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2004,21(5):123-125,130. [4] 李浩,凌霄霞.基于B/S三層結(jié)構(gòu)的網(wǎng)絡(luò)選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].農(nóng)村網(wǎng)絡(luò)信息,2007(3). [5] 李振坤,梁海健,孫延海.基于知識(shí)庫的學(xué)生選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2005(9):721-722. 收稿日期:2008-03-23 作者簡介:梁競敏(1974-),男,廣東人,講師,主要研究方向:計(jì)算機(jī)應(yīng)用技術(shù)。