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