周志忠
遼寧廣播電視大學(xué)(沈陽(yáng) 110034)
某中心城市教師遠(yuǎn)程培訓(xùn)及考試系統(tǒng),使用目前國(guó)際上比較主流的開(kāi)源學(xué)習(xí)平臺(tái)Moodle構(gòu)建,技術(shù)框架基于Linux、MySQL、PHP技術(shù)。于2010年初調(diào)試部署上線,并成功支撐了近3年的教師在線培訓(xùn)及考試工作,取得了很好的用戶反響和實(shí)際效果。隨著教師培訓(xùn)及考試工作在全市的全面鋪開(kāi),平臺(tái)需要支撐訪問(wèn)人數(shù)逐漸增加,2013年初達(dá)到67 000名中小學(xué)教師全部參加,在不增加系統(tǒng)硬件設(shè)備情況下,傳統(tǒng)的網(wǎng)絡(luò)架構(gòu)無(wú)法很好的適應(yīng)大業(yè)務(wù)量的教師培訓(xùn)及考試工作,需要一個(gè)更為完全、穩(wěn)定的網(wǎng)絡(luò)環(huán)境來(lái)承載業(yè)務(wù)。
為了解決上述遇到問(wèn)題,我們應(yīng)用虛擬化服務(wù)器技術(shù)來(lái)做進(jìn)一步改進(jìn),將云計(jì)算技術(shù)應(yīng)用于遠(yuǎn)程培訓(xùn)及考試系統(tǒng)的開(kāi)發(fā)和布署。保證網(wǎng)絡(luò)承載環(huán)境技術(shù)的先進(jìn)性、安全性、靈活性、拓展性,不僅滿足67 000人的培訓(xùn)及考試,還能為將來(lái)培訓(xùn)及考試業(yè)務(wù)承載的繼續(xù)擴(kuò)大提供最佳方案。最大限度的提升了系統(tǒng)的并發(fā)性、可靠性和穩(wěn)定性。
傳統(tǒng)的網(wǎng)絡(luò)在線考試系統(tǒng)主要是基于瀏覽器/服務(wù)器(B/S)結(jié)構(gòu)框架,使用.NET或J2EE等技術(shù)平臺(tái)來(lái)實(shí)現(xiàn)的,B/S最大的優(yōu)點(diǎn)就是可以在任何機(jī)器上進(jìn)行操作而不用安裝任何專門的軟件,只要有一臺(tái)能電腦能上網(wǎng)就能使用,我們稱之為客戶端零安裝、零維護(hù),這樣一來(lái)系統(tǒng)的擴(kuò)展非常容易。特別是近幾年AJAX技術(shù)的發(fā)展,使得這種結(jié)構(gòu)框架下的程序也能在客戶端電腦上進(jìn)行部分處理,從而大大的減輕了服務(wù)器的負(fù)擔(dān)。但是其缺點(diǎn)也是明顯存在的,在于只能利用到服務(wù)器的管理、調(diào)度以及資源管理功能,而客戶端只能被動(dòng)的提需求或接收數(shù)據(jù)。既不能高效利用服務(wù)器的功能,也不能有效解決服務(wù)器處理的瓶頸,更不能充分利用網(wǎng)絡(luò)中其他各類設(shè)備的計(jì)算能力。
采用云技術(shù)來(lái)實(shí)現(xiàn)遠(yuǎn)程培訓(xùn)及考試系統(tǒng)的建設(shè)是一種有益探索,能夠解決大數(shù)據(jù)量、多訪問(wèn)人群下的應(yīng)用系統(tǒng)開(kāi)發(fā)、應(yīng)用,以及網(wǎng)絡(luò)傳輸堵塞的問(wèn)題。
云計(jì)算是分布式計(jì)算技術(shù)的一種,是指透過(guò)網(wǎng)絡(luò)將龐大的計(jì)算處理程序自動(dòng)分拆成無(wú)數(shù)個(gè)較小的子程序,交給多部服務(wù)器所組成的龐大系統(tǒng),經(jīng)搜尋、計(jì)算分析一系列處理之后,將結(jié)果回傳給用戶。通過(guò)這項(xiàng)技術(shù),網(wǎng)絡(luò)服務(wù)提供者可以在數(shù)秒之內(nèi),處理數(shù)以千萬(wàn)計(jì)甚至億計(jì)的信息,完成類似超級(jí)計(jì)算機(jī)一樣強(qiáng)大效能的網(wǎng)絡(luò)服務(wù)。
云技術(shù)是指基于云計(jì)算應(yīng)用的網(wǎng)絡(luò)技術(shù)、信息技術(shù)、管理平臺(tái)技術(shù)、整合技術(shù)和應(yīng)用技術(shù)等的總稱。使用云技術(shù)后會(huì)將所有的計(jì)算資源集中起來(lái),由計(jì)算機(jī)軟件進(jìn)行自動(dòng)管理,無(wú)需人為參與,這樣應(yīng)用提供者能夠更加專注于自己的業(yè)務(wù),有利于業(yè)務(wù)創(chuàng)新和降低成本。舉個(gè)生活中的例子:好比是從每個(gè)人家使用一臺(tái)古老的單臺(tái)發(fā)電機(jī)模式轉(zhuǎn)向了電廠集中供電的模式。這意味著計(jì)算能力也可以作為一種商品進(jìn)行流通,就像煤氣、水、電一樣,方便取用,費(fèi)用低廉。最大的不同在于,這是通過(guò)互聯(lián)網(wǎng)進(jìn)行傳輸?shù)摹?/p>
(1)超大規(guī)模
在配碳比為1時(shí),根據(jù)圖1的結(jié)果,計(jì)算了添加10%氧化硼、8%硼砂和10%碳酸鈉對(duì)鮞狀赤鐵礦還原的影響,如圖2所示。三種添加劑對(duì)還原后液相渣含量的影響是隨著溫度的升高而升高。添加10%氧化硼后,液相渣含量在700 ℃后增加明顯,900 ℃后緩慢增加,1 300 ℃后開(kāi)始降低;添加8%硼砂后,對(duì)液相渣含量的影響呈現(xiàn)不規(guī)律性;添加10%碳酸鈉后,液相渣含量在1 100 ℃后增加明顯,在1 400 ℃后開(kāi)始降低。添加10%氧化硼對(duì)液相渣含量的影響要大于其他兩種添加劑。
Google公司提供云服務(wù)的設(shè)備已達(dá)100多萬(wàn)臺(tái)服務(wù)器,Amazon、IBM、微軟、Yahoo等的云服務(wù)也都擁有幾十萬(wàn)臺(tái)服務(wù)器。云技術(shù)能綜合現(xiàn)有龐大規(guī)模硬件資源,提供用戶前所未有的計(jì)算能力。
(2)虛擬化
云技術(shù)支持用戶在任意位置、使用各種終端獲取應(yīng)用服務(wù)。每一個(gè)應(yīng)用部署的環(huán)境和物理平臺(tái)是沒(méi)有關(guān)系的,所請(qǐng)求的資源來(lái)自“云”,而不是固定的有形的實(shí)體。
(3)高可靠性
云技術(shù)采用了數(shù)據(jù)多副本容錯(cuò)、計(jì)算節(jié)點(diǎn)同構(gòu)、可互換等措施來(lái)保障服務(wù)的高可靠性。通過(guò)集成海量存儲(chǔ)和高性能的計(jì)算能力,云能提供一定滿意度的服務(wù)質(zhì)量。
(4)高可擴(kuò)展性
為用戶需求提供了無(wú)限多的可能。云技術(shù)的一端,是由成千上萬(wàn)臺(tái)甚至更多的服務(wù)器組成的龐大集群,為存儲(chǔ)和管理數(shù)據(jù)提供無(wú)限多的空間,也為用戶完成各類應(yīng)用提供無(wú)限大的計(jì)算能力。
(5)按需服務(wù)
云平臺(tái)將計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源進(jìn)行綜合,將這些硬件資源能力作為服務(wù)向外提供,用戶尤其是中小企業(yè)用戶,可以按需購(gòu)買計(jì)算資源、存儲(chǔ)資源、通信資源等,極大地節(jié)約了成本。
基礎(chǔ)設(shè)施服務(wù):即 IaaS(Infrastructure-as-a-Service)。IaaS向用戶提供的不僅包括虛擬化的計(jì)算資源、存儲(chǔ)資源,整個(gè)基礎(chǔ)設(shè)施也可以作為一種服務(wù)向用戶提供。消費(fèi)者通過(guò)互聯(lián)網(wǎng)可以從完善的計(jì)算機(jī)基礎(chǔ)設(shè)施獲得服務(wù)。
平臺(tái)服務(wù):即PaaS(Platform-as-a- Service)。建立在基礎(chǔ)設(shè)施之上,主要包括并行程序設(shè)計(jì)和開(kāi)發(fā)環(huán)境以及實(shí)現(xiàn)云技術(shù)的其他系統(tǒng)管理工具,如云系統(tǒng)中資源的部署、監(jiān)控管理、分配、分布式并發(fā)控制等。主要是向應(yīng)用程序開(kāi)發(fā)者提供平臺(tái)應(yīng)用開(kāi)發(fā)接口。
軟件服務(wù):即SaaS(Software-as-a- Service)。隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展和應(yīng)用軟件的成熟,在21世紀(jì)開(kāi)始興起的一種完全創(chuàng)新的軟件應(yīng)用模式。服務(wù)商將應(yīng)用軟件統(tǒng)一部署在自己的服務(wù)器上,客戶可以根據(jù)自己實(shí)際需求,通過(guò)互聯(lián)網(wǎng)向服務(wù)商定購(gòu)所需的應(yīng)用軟件服務(wù),按定購(gòu)的服務(wù)多少和時(shí)間長(zhǎng)短向服務(wù)商支付費(fèi)用,并通過(guò)互聯(lián)網(wǎng)獲得服務(wù)商提供的服務(wù)。
某中心城市教師遠(yuǎn)程培訓(xùn)及考試系統(tǒng)仍使用原先B/S架構(gòu)時(shí)的3臺(tái)雙核服務(wù)器,通過(guò)Openresty與Lua語(yǔ)言的結(jié)合搭建了高效軟件服務(wù)器端設(shè)計(jì),通過(guò)云技術(shù)分布式服務(wù)器部署來(lái)實(shí)現(xiàn)各服務(wù)器的負(fù)載均衡和前端高并發(fā)壓力負(fù)載。
具體策略如下:
(1)通過(guò)Oracle VM VirtualBox來(lái)實(shí)現(xiàn)分布式虛擬機(jī)的創(chuàng)建、管理,通過(guò)VirtualBox Api采用php進(jìn)行WEB方式進(jìn)行有效管理?;A(chǔ)底層系統(tǒng)是Centos6.4,分布式虛擬機(jī)的系統(tǒng)也是采用 Centos6.4,這樣實(shí)現(xiàn)了整個(gè)系統(tǒng)全linux的構(gòu)架,并實(shí)現(xiàn)通過(guò)版本無(wú)縫對(duì)接。
(2)為保證高并發(fā)壓力帶寬采用1G出口,部署萬(wàn)兆交換機(jī)、防火墻相配合,實(shí)現(xiàn)線路無(wú)阻塞式網(wǎng)絡(luò)部署。
(3)Lua語(yǔ)言的軟件架構(gòu),lua是由標(biāo)準(zhǔn)C語(yǔ)言編寫(xiě)的,具有強(qiáng)大的C語(yǔ)言支持庫(kù),有著高性能、高效率的美稱,采用lua實(shí)現(xiàn)了語(yǔ)言簡(jiǎn)潔,業(yè)務(wù)清晰,效能高的目的。
(4)數(shù)據(jù)存儲(chǔ)上采用緩存技術(shù)加持久層數(shù)據(jù)庫(kù)存儲(chǔ)結(jié)合的模式,緩存層采用 redis來(lái)實(shí)現(xiàn),持久層采用Sql server與mysql,數(shù)據(jù)先存入緩存層,經(jīng)由數(shù)據(jù)寫(xiě)入排隊(duì)系統(tǒng)進(jìn)行數(shù)據(jù)排隊(duì),保證持久層穩(wěn)定的數(shù)據(jù)存儲(chǔ)。這種高效的部署方式也是國(guó)內(nèi)、外知名網(wǎng)站系統(tǒng)所采用的方式。
(5)備份、應(yīng)急系統(tǒng),我們通過(guò)預(yù)留備份、應(yīng)急系統(tǒng)來(lái)解決故障的應(yīng)急處理,此部分采用虛擬機(jī)技術(shù)來(lái)解決。
培訓(xùn)系統(tǒng)應(yīng)用部署圖如圖1所示。
圖1 培訓(xùn)系統(tǒng)應(yīng)用部署圖
在實(shí)際支撐某中心城市教師遠(yuǎn)程培訓(xùn)及考試工作之前,我們采用 Linux webbench 壓力測(cè)試工具進(jìn)行模擬壓力測(cè)試,結(jié)果如下:
(1)2 000用戶同時(shí)并發(fā),即20 000用戶同時(shí)在線:每秒鐘響應(yīng)請(qǐng)求數(shù)103 458 pages/min;每秒鐘傳輸數(shù)據(jù)量 840 211 bytes/sec;0個(gè)連接 failed,完成請(qǐng)求206917。
(2)4 000用戶同時(shí)并發(fā),即40 000用戶同時(shí)在線:每秒鐘響應(yīng)請(qǐng)求數(shù)85 500 pages/min;每秒鐘傳輸數(shù)據(jù)量 756 946 bytes/sec; 0個(gè)連接 failed,完成請(qǐng)求171001。
(3)6 000用戶同時(shí)并發(fā),即60 000用戶同時(shí)在線:每秒鐘響應(yīng)請(qǐng)求數(shù)103 869 pages/min;每秒鐘傳輸數(shù)據(jù)量841 032 bytes/sec; 2個(gè)連接failed,完成請(qǐng)求207736。
(4)整個(gè)過(guò)程CPU占有率在 30~57%之間。
根據(jù)上述數(shù)據(jù)通過(guò)軟件模擬測(cè)試得出結(jié)論:能保障培訓(xùn)及考試正常運(yùn)行。
因此,在2013年下半年和2014年上半年,某中心城市應(yīng)用此系統(tǒng)開(kāi)展了教師在線培訓(xùn)及考試工作。實(shí)踐證明,通過(guò)服務(wù)器云技術(shù)整合方案的實(shí)施,網(wǎng)絡(luò)在線考試系統(tǒng)較好的支撐了 67 000名中小學(xué)教師的遠(yuǎn)程培訓(xùn)及考試。(1)服務(wù)器的性能使用率明顯提高,高峰使用率從42%提高到了85%。(2)通過(guò)與技術(shù)的使用,取消了原先需再購(gòu)買6臺(tái)服務(wù)器的計(jì)劃,節(jié)省了設(shè)備經(jīng)費(fèi)。
綜上所述,某中心城市教師遠(yuǎn)程培訓(xùn)及考試系統(tǒng)建設(shè)中,云技術(shù)的應(yīng)用使服務(wù)器的功能得到了有效地發(fā)揮,無(wú)論從應(yīng)用服務(wù)的穩(wěn)定性、高可用性、資源的合理調(diào)配、快速部署等方面,還是從節(jié)能、節(jié)電、節(jié)約空間等方面,都比應(yīng)用前有顯著改善。
[1]劉鵬. 云計(jì)算技術(shù)原理,http://www.chinacloud.cn/ show.aspx?id=1929&cid=12, 2009-06-17.
[2]陳全, 鄧倩妮. 云計(jì)算及其關(guān)鍵技術(shù)[J]. 計(jì)算機(jī)應(yīng)用, 2009,29(9): 2562-2567.
[3]張建勛, 古志民, 鄭超. 云計(jì)算研究進(jìn)展綜述[J]. 計(jì)算機(jī)應(yīng)用研究, 2010, 27, (2): 429-433.