常志鵬 徐娟
摘要:隨著高等院校信息化水平的高速發(fā)展,網(wǎng)絡(luò)教學(xué)平臺(tái)重要性日趨顯著。本文分析某高校網(wǎng)絡(luò)教學(xué)平臺(tái)服務(wù)響應(yīng)時(shí)間的影響因素,并針對(duì)服務(wù)器性能、數(shù)據(jù)庫(kù)連接池優(yōu)化、是否采用服務(wù)器緩存、是否集群部署四分類(lèi)變量,對(duì)平臺(tái)響應(yīng)時(shí)間進(jìn)行性能測(cè)試。隨機(jī)選擇測(cè)試數(shù)據(jù)集中80%數(shù)據(jù)作為樸素貝葉斯分類(lèi)算法測(cè)試數(shù)據(jù),并對(duì)20%數(shù)據(jù)進(jìn)行響應(yīng)時(shí)間預(yù)測(cè)。根據(jù)樸素貝葉斯分類(lèi)器后驗(yàn)概率,獲取每個(gè)狀態(tài)分類(lèi)特征對(duì)類(lèi)的貢獻(xiàn)率。實(shí)驗(yàn)表明,優(yōu)化Windows服務(wù)器性能配置、引入服務(wù)器緩存技術(shù)、采用數(shù)據(jù)庫(kù)連接池Druid、采用集群方式部署,能夠有效縮短網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間。
關(guān)鍵詞:網(wǎng)絡(luò)教學(xué)平臺(tái);響應(yīng)時(shí)間;樸素貝葉斯分類(lèi)算法
中圖分類(lèi)號(hào):TP301.6 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)12-0112-04
0 引言
隨著“互聯(lián)網(wǎng)+教育”的快速發(fā)展,傳統(tǒng)課堂教學(xué)模式的缺點(diǎn)和不足逐漸顯露。傳統(tǒng)的教學(xué)模式無(wú)法滿足信息時(shí)代學(xué)生對(duì)于教學(xué)的需求。由于區(qū)域發(fā)展不均衡,學(xué)生所接受的教學(xué)設(shè)備和教學(xué)資源不同且有限,同時(shí)存在教學(xué)資源和教師水平分布不均勻的現(xiàn)象,這制約了教學(xué)水平整體的上升和教學(xué)質(zhì)量的提升。網(wǎng)絡(luò)教學(xué)能夠一定程度上滿足信息時(shí)代學(xué)生對(duì)教學(xué)的需求,并且在不斷發(fā)展和完善。王嘉棣[1]指出,隨著網(wǎng)絡(luò)教育教學(xué)在全國(guó)的各地的推廣,同時(shí)逐漸暴露出當(dāng)前網(wǎng)絡(luò)教育教學(xué)面臨的諸多問(wèn)題。在線教學(xué)并沒(méi)有實(shí)現(xiàn)對(duì)教學(xué)資源的最大化使用,反而存在重復(fù)以及冗余等問(wèn)題。越來(lái)越多的專(zhuān)家和學(xué)者關(guān)注以下兩個(gè)問(wèn)題。其一,在線教學(xué)資源如何能夠被高效率地利用。其二,如何通過(guò)網(wǎng)絡(luò)教學(xué)平臺(tái)實(shí)現(xiàn)學(xué)習(xí)者自主、交互、自動(dòng)的學(xué)習(xí)。
構(gòu)建高等院校網(wǎng)絡(luò)教學(xué)平臺(tái)推動(dòng)了教學(xué)領(lǐng)域的改革,它可以實(shí)現(xiàn)教學(xué)資源的共享和實(shí)時(shí)更新。通過(guò)應(yīng)用大數(shù)據(jù)對(duì)網(wǎng)絡(luò)教學(xué)平臺(tái)進(jìn)行構(gòu)建,不僅滿足學(xué)生的日常學(xué)習(xí)需求,同時(shí)將教師的課余時(shí)間在教學(xué)領(lǐng)域進(jìn)行拓展,提供了一個(gè)很好的信息載體平臺(tái)。胡宇紅[2]等人在研究多家高校在線教育教學(xué)平臺(tái)存在的問(wèn)題,提出加強(qiáng)各個(gè)網(wǎng)絡(luò)教學(xué)平臺(tái)的聯(lián)系同時(shí)減少網(wǎng)絡(luò)教學(xué)資源過(guò)度浪費(fèi)的情況,提升在線平臺(tái)的質(zhì)量,只有關(guān)注在線教學(xué)平臺(tái)的質(zhì)量才能保證網(wǎng)絡(luò)教學(xué)健康發(fā)展。網(wǎng)絡(luò)平臺(tái)應(yīng)用服務(wù)響應(yīng)時(shí)間作為衡量教學(xué)平臺(tái)質(zhì)量的因素之一,是平臺(tái)可用性、穩(wěn)定性的重要指標(biāo)。文檔[3]提出,據(jù)統(tǒng)計(jì)結(jié)果顯示,網(wǎng)絡(luò)平臺(tái)服務(wù)響應(yīng)時(shí)間在4秒以?xún)?nèi),大部分用戶可以接受;4~7秒以?xún)?nèi),30%的用戶選擇離開(kāi);8~9秒,則有60%的用戶選擇離開(kāi);超過(guò)10秒,則90%以上的用戶選擇離開(kāi)。
1 網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間分析
網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間(Response Time)是指從客戶端發(fā)起請(qǐng)求開(kāi)始,到請(qǐng)求端接收到服務(wù)器端的返回結(jié)束,整個(gè)過(guò)程所耗費(fèi)的時(shí)間。完整地記錄了對(duì)應(yīng)系統(tǒng)處理請(qǐng)求交易的時(shí)間。如圖1的訪問(wèn)請(qǐng)求,客戶端的請(qǐng)求及響應(yīng)時(shí)間有:HTTP請(qǐng)求時(shí)間(N1)、WEB服務(wù)器處理時(shí)間(A1、A5)、WEB服務(wù)器與中間件交互時(shí)間(N2)、中間件處理時(shí)間(A2、A4)、中間與數(shù)據(jù)庫(kù)服務(wù)器交互時(shí)間(N3)、數(shù)據(jù)庫(kù)服務(wù)器處理時(shí)間(A3)、數(shù)據(jù)庫(kù)服務(wù)器響應(yīng)時(shí)間(N4)、中間件響應(yīng)時(shí)間(N5)、WEB服務(wù)器響應(yīng)時(shí)間(N6)。網(wǎng)絡(luò)平臺(tái)響應(yīng)時(shí)間為N1+A1+N2+A2+ N3+A3+N4+A4+N5+A5+N6。
本文將網(wǎng)絡(luò)教學(xué)平臺(tái)請(qǐng)求時(shí)間消耗主要切分為展示耗時(shí)、網(wǎng)絡(luò)傳輸耗時(shí)、應(yīng)用處理耗時(shí)三部分,如圖2所示。展示耗時(shí)主要差異在瀏覽器、用戶自身電腦配置的差異上;網(wǎng)絡(luò)傳輸耗時(shí),如果涉及廣域網(wǎng),大多情況都會(huì)有5ms-50ms的延時(shí);如果是局域網(wǎng)普遍延時(shí)都在1ms以?xún)?nèi),幾乎可以忽略不計(jì)。本文重點(diǎn)關(guān)注應(yīng)用系統(tǒng)處理耗時(shí),WEB服務(wù)器性能、數(shù)據(jù)庫(kù)性能、是否引入服務(wù)器緩存、是否集群部署四分類(lèi)變量對(duì)網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間的影響。
1.1 WEB服務(wù)器性能對(duì)平臺(tái)響應(yīng)時(shí)間的影響
研究表明,WEB服務(wù)器性能直接影響在線學(xué)習(xí)平臺(tái)響應(yīng)時(shí)間。本平臺(tái)基于windows 2008。系統(tǒng)TCP參數(shù)基于帶寬、網(wǎng)卡、速率等其他因素考慮,在默認(rèn)值設(shè)置上都是比較保守的,基于默認(rèn)值而言,windows系統(tǒng)會(huì)保留60%左右的性能空間。
TCPWindowSize是指tcp窗口大小。其缺省值為16KB。缺省情況下,本文將試圖根據(jù)MSS來(lái)優(yōu)化窗口大小,起始值為16384字節(jié)(16KB)16KB,最大值為64KB。以太網(wǎng)最大段長(zhǎng)度為1460字節(jié),低于64KB的1460的最大整數(shù)倍為62420字節(jié),修改為62420字節(jié)(略小于最大值64KB),通過(guò)修改該參數(shù)可以有效充分利用網(wǎng)絡(luò),提高服務(wù)器的網(wǎng)絡(luò)吞吐率,是高帶寬網(wǎng)絡(luò)中適用的性能優(yōu)化參數(shù)必選之項(xiàng)。提高效率理論上約為3倍左右。
1.2 數(shù)據(jù)庫(kù)連接池對(duì)平臺(tái)響應(yīng)時(shí)間的影響
建立Web應(yīng)用程序與數(shù)據(jù)庫(kù)之間的TCP連接,DBMS需要為其分配多種資源,而在釋放連接時(shí),DBMS需要釋放掉這些資源,分配和釋放資源都是比較耗時(shí)的工作,建立和釋放連接勢(shì)必會(huì)影響整個(gè)系統(tǒng)的性能。實(shí)際上,大多數(shù)應(yīng)用程序僅使用1個(gè)或幾個(gè)不同的連接配置。這意味著在執(zhí)行應(yīng)用程序期間,許多相同的連接將反復(fù)地打開(kāi)和關(guān)閉。
在平臺(tái)中,我們采用阿里寶寶的數(shù)據(jù)庫(kù)連接池Druid,以替換過(guò)去使用的DBCP和C3P0,相比DBCP和C3P0會(huì)出現(xiàn)數(shù)據(jù)庫(kù)無(wú)法重連,連接效率慢,Druid是具備更高的穩(wěn)定性及高效性。
1.3 服務(wù)器緩存技術(shù)對(duì)響應(yīng)時(shí)間的影響
Internet的統(tǒng)計(jì)表明,超過(guò)80%的用戶經(jīng)常訪問(wèn)的是20%的網(wǎng)站的內(nèi)容,在這個(gè)規(guī)律下,緩存服務(wù)器可以處理大部分客戶的靜態(tài)請(qǐng)求,而原始的服務(wù)器只需處理約20%左右的非緩存請(qǐng)求和動(dòng)態(tài)請(qǐng)求,于是大大加快了客戶請(qǐng)求的響應(yīng)時(shí)間,并降低了原始服務(wù)器的負(fù)載。合理有效地設(shè)計(jì)和使用緩存是優(yōu)化應(yīng)用系統(tǒng)性能的重要手段,在基于Web的支持大量用戶的系統(tǒng)開(kāi)發(fā)中,這一點(diǎn)尤為明顯。利用有效的緩存,可以避免Web服務(wù)器與數(shù)據(jù)庫(kù)之間的網(wǎng)絡(luò)往返,繞過(guò)占用很多資源的計(jì)算,并節(jié)省服務(wù)器資源,同時(shí)改善響應(yīng)時(shí)間和等待時(shí)間。
緩存服務(wù)是一種提高服務(wù)器性能、降低服務(wù)器資源浪費(fèi)的有效方法。對(duì)于安全性要求高的應(yīng)用程序,采用在WEB服務(wù)器上維護(hù)緩存數(shù)據(jù)的方式可以有效地提高頁(yè)面性能。緩存實(shí)現(xiàn)了最近最少使用(least-recently-used)替換算法,而且允許強(qiáng)制緩存清除操作——如果可用內(nèi)存下降到低水平——?jiǎng)t自動(dòng)從緩存中刪除不使用的項(xiàng)目。另外緩存支持依賴(lài)性到期特性,它能強(qiáng)制包括時(shí)間、鍵值、文件失效。多級(jí)緩存的體系結(jié)構(gòu)如圖3所示。
1.4 集群部署對(duì)響應(yīng)時(shí)間的影響
目前,國(guó)內(nèi)各高校辦學(xué)規(guī)模不斷擴(kuò)大,在校學(xué)生數(shù)量不斷增加,網(wǎng)絡(luò)教學(xué)平臺(tái)會(huì)出現(xiàn)在線學(xué)習(xí)課程頁(yè)面響應(yīng)速度慢及無(wú)響應(yīng)的情況,嚴(yán)重影響了學(xué)生的學(xué)習(xí)效率、打亂了教師的教學(xué)計(jì)劃。教學(xué)平臺(tái)采用集群部署,能夠有效降低這一問(wèn)題。集群部署[4]是指,利用網(wǎng)絡(luò)將一組具有獨(dú)立功能的計(jì)算機(jī)或系統(tǒng)連接起來(lái)作為工作群,作為特定WEB服務(wù)器,完成集群中所有結(jié)點(diǎn)能一起協(xié)同工作完成某項(xiàng)特定任務(wù)。
網(wǎng)絡(luò)教學(xué)平臺(tái)采用負(fù)載均衡集群,指對(duì)教學(xué)平臺(tái)中的負(fù)載進(jìn)行動(dòng)態(tài)調(diào)整,以盡量降低平臺(tái)各節(jié)點(diǎn)負(fù)載不均衡的現(xiàn)象。由多臺(tái)服務(wù)器組成工作集群,其中每臺(tái)服務(wù)器可單獨(dú)提供服務(wù),且無(wú)須其他設(shè)備輔助。通過(guò)負(fù)載均衡算法將外部請(qǐng)求按特定規(guī)則,均勻分配到具體服務(wù)器上,從而實(shí)現(xiàn)平臺(tái)各節(jié)點(diǎn)并發(fā)數(shù)相當(dāng),提高教學(xué)平臺(tái)吞吐量。
2 樸素貝葉斯分類(lèi)算法
2.1 分類(lèi)問(wèn)題
分類(lèi)問(wèn)題可做如下定義:
已知集合C=y1,y2,……,yn和I=x1,x2,……,xn確定映射規(guī)則y=f(),使得任意xi∈I有且僅有一個(gè)yi∈C,使得yi∈f(xi)成立。其中C叫做類(lèi)別集合,其中每一個(gè)元素是一個(gè)類(lèi)別,而I叫做項(xiàng)集合(特征集合),其中每一個(gè)元素是一個(gè)待分類(lèi)項(xiàng),f叫做分類(lèi)器。分類(lèi)算法的任務(wù)就是構(gòu)造分類(lèi)器f。
2.2 樸素貝葉斯分類(lèi)算法
設(shè)每個(gè)數(shù)據(jù)樣本用一個(gè)n維特征向量來(lái)描述n個(gè)屬性的值,即:X={x1,x2,…,xn},假定有m個(gè)類(lèi),分別用C1, C2,…,Cm表示。給定一個(gè)未知的數(shù)據(jù)樣本X(即沒(méi)有類(lèi)標(biāo)號(hào)),若樸素貝葉斯分類(lèi)法將未知的樣本X分配給類(lèi)Ci,則一定是
P(Ci|X)>P(Cj|X) 1≤j≤m,j≠I(mǎi)? ? ? ? ? ? ? ? ? ? (公式一)
根據(jù)貝葉斯定理:
(公式二)
由于P(X)對(duì)于所有類(lèi)為常數(shù),最大化后驗(yàn)概率P(Ci|X)可轉(zhuǎn)化為最大化先驗(yàn)概率P(X|Ci)P(Ci)。如果訓(xùn)練數(shù)據(jù)集有許多屬性和元組,計(jì)算P(X|Ci)的開(kāi)銷(xiāo)可能非常大,為此,通常假設(shè)各屬性的取值互相獨(dú)立,這樣先驗(yàn)概率P(x1|Ci),P(x2|Ci),…,P(xn|Ci)可以從訓(xùn)練數(shù)據(jù)集求得。
根據(jù)此方法,對(duì)一個(gè)未知類(lèi)別的樣本X,可以先分別計(jì)算出X屬于每一個(gè)類(lèi)別Ci的概率P(X|Ci)P(Ci),然后選擇其中概率最大的類(lèi)別作為其類(lèi)別。
樸素貝葉斯算法[5]成立的前提是各屬性之間互相獨(dú)立,是己知先驗(yàn)概率和類(lèi)條件概率下的一種模塊分類(lèi)器。算法的核心思想:選擇具有最高后驗(yàn)概率作為確定類(lèi)別的指標(biāo)。當(dāng)數(shù)據(jù)集符合獨(dú)立性假設(shè)條件時(shí),分類(lèi)準(zhǔn)確度較高,否則分類(lèi)可能較低。另外,該算法沒(méi)有分類(lèi)規(guī)則輸出。該模型發(fā)源于古典數(shù)學(xué)理論,有穩(wěn)定的分類(lèi)效率。對(duì)小規(guī)模的數(shù)據(jù)表現(xiàn)很好,能處理多分類(lèi)任務(wù),對(duì)缺失數(shù)據(jù)敏感性弱,適合增量式訓(xùn)練。
3 響應(yīng)時(shí)間的影響因素仿真與分析
3.1 實(shí)驗(yàn)環(huán)境及參數(shù)配置
網(wǎng)絡(luò)教學(xué)平臺(tái)部署于虛擬化服務(wù)器。本文采用Python語(yǔ)言與Scikit_Learn機(jī)器學(xué)習(xí)庫(kù)進(jìn)行模型訓(xùn)練。
3.2 數(shù)據(jù)來(lái)源及預(yù)處理
本文針對(duì)某高校網(wǎng)絡(luò)教學(xué)平臺(tái),采用性能測(cè)工具Jmeter針對(duì)表一中不同參數(shù)設(shè)置,對(duì)網(wǎng)絡(luò)教學(xué)平臺(tái)進(jìn)行測(cè)試。經(jīng)測(cè)試后,我們收集測(cè)試總數(shù)據(jù)集1000條,選擇80%作為模型訓(xùn)練數(shù)據(jù)集,20%為測(cè)試數(shù)據(jù)集,如表1所示。
高質(zhì)量的數(shù)據(jù)是準(zhǔn)確有效地預(yù)測(cè)網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間的基礎(chǔ)。對(duì)數(shù)據(jù)的類(lèi)型進(jìn)行轉(zhuǎn)換,使其更加有利于分析研究。由于Web服務(wù)器TCPWindowSize 設(shè)置分別為16kb及64kb。本文將其轉(zhuǎn)換為0-1制,其中0表示16kb,1表示64kb。網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間為連續(xù)型數(shù)據(jù),為了方便研究,本文將其劃分為A、B、C、D等級(jí)。響應(yīng)時(shí)間及等級(jí)劃分如表2所示。
3.3 樸素貝葉斯分類(lèi)器模型訓(xùn)練及分析
通過(guò)樸素貝葉斯模型預(yù)測(cè)該平臺(tái)對(duì)特定請(qǐng)求響應(yīng)時(shí)間。系統(tǒng)響應(yīng)時(shí)間有四個(gè)分類(lèi)變量(分類(lèi)因子),包括在線用戶數(shù),Web服務(wù)器Windows2008 TCP參數(shù)調(diào)優(yōu)TCPWindowSize,MySql數(shù)據(jù)庫(kù)Key_Buffer_Size,Redis緩存。使用Scikit_Learn中的樸素貝葉斯分類(lèi)算法GaussianNB,該算法假設(shè)特征的先驗(yàn)概率為正態(tài)分布,主要用于連續(xù)變量中。本數(shù)據(jù)集中各特征接近于連續(xù)型隨機(jī)變量,適合本算法。
程序部分代碼如表3所示。
測(cè)試結(jié)果如表4所示。
由表4可知,當(dāng)選擇訓(xùn)練樣本為近一周網(wǎng)絡(luò)教學(xué)平臺(tái)測(cè)試數(shù)據(jù),訓(xùn)練樣本總數(shù)為800條數(shù)據(jù)。其中,響應(yīng)時(shí)間A類(lèi)型為542條,響應(yīng)時(shí)間B類(lèi)型為179條,響應(yīng)時(shí)間C類(lèi)型66條,響應(yīng)時(shí)間D類(lèi)型為13條,測(cè)試樣本總數(shù)為200條,其中,響應(yīng)時(shí)間類(lèi)型A為132條,響應(yīng)時(shí)間類(lèi)型B為31條,響應(yīng)時(shí)間類(lèi)型C為11條,響應(yīng)時(shí)間類(lèi)型D為4條。應(yīng)用 NBC算法進(jìn)行分類(lèi)預(yù)測(cè),響應(yīng)時(shí)間A類(lèi)型、響應(yīng)時(shí)間B類(lèi)型精度較優(yōu)。
4 結(jié)語(yǔ)
實(shí)驗(yàn)表明,在網(wǎng)絡(luò)帶寬并沒(méi)有得到相對(duì)擴(kuò)充、網(wǎng)絡(luò)流量沒(méi)有絕對(duì)增加的情況下,同時(shí)優(yōu)化Windows服務(wù)器性能配置、引入服務(wù)器緩存技術(shù)、采用數(shù)據(jù)庫(kù)連接池Druid、采用集群方式部署,能夠有效縮短在線學(xué)習(xí)平臺(tái)響應(yīng)時(shí)間,從而加速網(wǎng)絡(luò)對(duì)用戶的反應(yīng)速度,縮短用戶感知的時(shí)間延遲。但上述的分類(lèi)中,僅對(duì)四類(lèi)影響網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間因素分析,在接下來(lái)的研究中,還應(yīng)該深入分析其他因素對(duì)網(wǎng)絡(luò)教學(xué)平臺(tái)響應(yīng)時(shí)間的影響。
參考文獻(xiàn)
[1] 陸夢(mèng)娟,王嘉棣.在線教育市場(chǎng)的發(fā)展現(xiàn)狀分析及對(duì)策建議[J].中國(guó)市場(chǎng),2015(44):73-74.
[2] 胡宇紅.淺談網(wǎng)絡(luò)教育發(fā)展現(xiàn)狀[J].東北大學(xué)學(xué)報(bào),2013(12):77-78.
[3] 陳能技.軟件測(cè)試技術(shù)大全:測(cè)試基礎(chǔ)流行工具項(xiàng)目實(shí)戰(zhàn)[M].人民郵電出版社,2008.
[4] 陳麗萍.基于集群的教務(wù)管理系統(tǒng)性能優(yōu)化研究及部署[J].教育現(xiàn)代化,2019,6(20):122-123.
[5] 王輝,陳泓予,劉淑芬.基于改進(jìn)樸素貝葉斯算法的入侵檢測(cè)系統(tǒng)[J].計(jì)算機(jī)科學(xué),2014,41(4):111-115.
Research on Response Time of? Network Teaching Platform Based on Naive Bayesian Algorithm
CHANG Zhi-peng,XU Juan
(Modern Educational Technology Center,Ningxia Medical University, Yinchuan? Ningxia? 750001)
Abstract:With the rapid development of informatization in colleges and universities, the importance of network teaching platform is becoming more and more significant. This paper analyzed the influencing factors of service response time of network teaching platform in a university, and tested the performance of platform response time according to server performance, database connection pool optimization, server cache, and cluster deployment of 4-class variables. 80% of the data in the test data set was randomly selected as the test data of naive Bayesian classification algorithm, and the response time of 20% data was predicted. According to the posterior probability of naive Bayesian classifiers, the contribution rate of each state classification feature to the class was obtained. The experimental results showed that the response time of network teaching platform can be effectively shortened by optimizing the performance configuration of Windows server, introducing server cache technology, adopting database connection pool of Druid, and utilizing the cluster deployment.
Key words:network teaching platform; response time; naive Bayesian classification algorithm