王家兵 彭 紅
(1.重慶交通大學(xué)圖書(shū)館;2.重慶交通大學(xué)科技處,重慶 400074)
教學(xué)參考資源平臺(tái)以課程為中心,以數(shù)字化教學(xué)參考書(shū)、多媒體課件為主要內(nèi)容,實(shí)現(xiàn)了高校的優(yōu)質(zhì)數(shù)字化教學(xué)資源共享,相關(guān)平臺(tái)建設(shè)成為高校信息化建設(shè)的重要組成部分,也是高校數(shù)字化校園建設(shè)的一項(xiàng)重要內(nèi)容。目前,教學(xué)參考資源平臺(tái)已成為各高校圖書(shū)館自建特色電子資源的重要部分,是圖書(shū)館服務(wù)教學(xué)、服務(wù)科研的重要平臺(tái),受到國(guó)內(nèi)外各高校圖書(shū)館的廣泛重視。經(jīng)過(guò)近十年的發(fā)展,教學(xué)參考資源平臺(tái)在國(guó)內(nèi)外高校圖書(shū)館得到廣泛應(yīng)用,對(duì)數(shù)字化教學(xué)資源共享、在線教學(xué)以及開(kāi)展慕課、翻轉(zhuǎn)課堂、微課等新興教學(xué)方法發(fā)揮了重要的支撐作用[1-2]。
早期的教學(xué)參考資源平臺(tái)大多是單服務(wù)器模式,采用Web瀏覽器、Web服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器三層架構(gòu),如江蘇廣播電視大學(xué)基于.NET三層架構(gòu)實(shí)現(xiàn)的開(kāi)放教育課程資料庫(kù)[3]、重慶工商大學(xué)采用JSP+Tomcat+SQLServer技術(shù)方案開(kāi)發(fā)的基于B/S/D三層體系結(jié)構(gòu)教學(xué)參考資源系統(tǒng)[4]等。隨著應(yīng)用規(guī)模的增長(zhǎng),這類教學(xué)參考資源表現(xiàn)出存儲(chǔ)空間難以滿足日益增長(zhǎng)的電子資源量的需求,并隨著移動(dòng)終端的廣泛應(yīng)用,出現(xiàn)了移動(dòng)終端支持差、用戶交互體驗(yàn)差等方面的問(wèn)題,影響系統(tǒng)的使用。隨著云計(jì)算相關(guān)技術(shù)的日益成熟與移動(dòng)學(xué)習(xí)的廣泛興起,越來(lái)越多的高校認(rèn)識(shí)到建設(shè)基于云計(jì)算模式的教學(xué)參考資源平臺(tái)的優(yōu)越性與必要性。教學(xué)參考資源云服務(wù)平臺(tái)通過(guò)云平臺(tái)實(shí)現(xiàn)學(xué)習(xí)資源集中存儲(chǔ)與分散使用,使相關(guān)學(xué)習(xí)資源得到了良好的保存、保護(hù),支持使用移動(dòng)終端,使其突破時(shí)間與地點(diǎn)的限制,已成為教學(xué)參考資源建設(shè)發(fā)展的一個(gè)必然趨勢(shì)。越來(lái)越多機(jī)構(gòu)與學(xué)者都在積極研究采用云計(jì)算架構(gòu)來(lái)構(gòu)建教學(xué)參考資源平臺(tái)[5-6]。
教學(xué)參考資源平臺(tái)的功能是為本校各類課程與專業(yè)的相關(guān)學(xué)習(xí)電子資源,包括電子教參書(shū)、視頻、軟件、隨書(shū)光盤(pán)等進(jìn)行網(wǎng)絡(luò)數(shù)字化存儲(chǔ),為學(xué)校師生讀者提供一個(gè)不受時(shí)間、地點(diǎn)限制的在線學(xué)習(xí)與交流平臺(tái)。相對(duì)單機(jī)模式的教學(xué)參考資源平臺(tái),云教學(xué)參考資源平臺(tái)在底層采用了新型的架構(gòu),能更好地實(shí)現(xiàn)相關(guān)功能,實(shí)現(xiàn)存儲(chǔ)資源的動(dòng)態(tài)擴(kuò)展,對(duì)移動(dòng)用戶有更好的支持。實(shí)現(xiàn)的主要功能具體有以下方面:
①教參資源上傳、下載、在線閱讀,以及資源評(píng)論與收藏;
②對(duì)課程和教參資源進(jìn)行管理;
③用戶管理、登錄,與學(xué)校一卡通統(tǒng)一身份認(rèn)證系統(tǒng)集成;
④個(gè)人學(xué)習(xí)社區(qū)建立,包括個(gè)人信息,以及資源推薦、用戶互動(dòng)等功能;
⑤輔助功能,如訪問(wèn)量、資源量、熱門(mén)資源統(tǒng)計(jì)等;
⑥移動(dòng)APP提供移動(dòng)終端對(duì)系統(tǒng)的訪問(wèn)。
傳統(tǒng)教學(xué)參考資源平臺(tái)大多采用Web瀏覽器、Web服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器三層應(yīng)用程序架構(gòu)模式構(gòu)建,整個(gè)系統(tǒng)部署在靜態(tài)的網(wǎng)絡(luò)和服務(wù)器上,此架構(gòu)使得教學(xué)參考資源平臺(tái)的應(yīng)用規(guī)模增大時(shí),需要徹底對(duì)整個(gè)硬件平臺(tái)升級(jí),應(yīng)用程序需重新配置以適應(yīng)新服務(wù)器,另外在基礎(chǔ)硬件發(fā)生故障時(shí),直接影響平臺(tái)的可用性。采用云計(jì)算平臺(tái)構(gòu)建的教學(xué)參考資源平臺(tái),應(yīng)用部署在多個(gè)虛擬服務(wù)器上,應(yīng)用不會(huì)因?yàn)閭€(gè)別的服務(wù)器故障而失效,擴(kuò)展也無(wú)需進(jìn)行全面的更新硬件基礎(chǔ)。同時(shí)云教學(xué)參考資源平臺(tái)需要對(duì)移動(dòng)用戶提供支持。圖1顯示了采用云計(jì)算平臺(tái)技術(shù)的教學(xué)參考資源平臺(tái)系統(tǒng)架構(gòu)。
圖1 教學(xué)參考資源云服務(wù)平臺(tái)系統(tǒng)架構(gòu)
整個(gè)體系結(jié)構(gòu)由5部分組成,分別是基礎(chǔ)設(shè)施層、數(shù)據(jù)資源層、應(yīng)用層、用戶訪問(wèn)層和管理層,基礎(chǔ)設(shè)施層是基礎(chǔ)架構(gòu)層面的云計(jì)算服務(wù),為上層提供虛擬化的資源,包括物理服務(wù)器、虛擬服務(wù)器、網(wǎng)絡(luò)設(shè)備、安全防火墻等;數(shù)據(jù)資源層以文件服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器,為用戶提供對(duì)資源數(shù)據(jù)層服務(wù)的封裝;應(yīng)用層主要提供各種資源的應(yīng)用,包括教學(xué)參考資源的教參資源上傳、下載、檢索、在線閱讀,用戶交流社區(qū),用戶訪問(wèn)認(rèn)證等;用戶訪問(wèn)層則提供Web訪問(wèn)服務(wù)接口、APP訪問(wèn)服務(wù)接口、各種Web Service接口等功能;管理層是提供對(duì)所有層次的管理功能,包括安全管理、資源管理、用戶管理、服務(wù)監(jiān)控以及各種統(tǒng)計(jì)功能等。
云教學(xué)參考資源平臺(tái)實(shí)現(xiàn)方案選擇需要從技術(shù)、經(jīng)濟(jì)等多個(gè)方面進(jìn)行考慮比較。技術(shù)方面要考慮采用方案所需硬件能否滿足使用要求,采用的軟件技術(shù)是否符合相關(guān)的業(yè)界標(biāo)準(zhǔn),具有安全性、先進(jìn)性、可靠性、適用性,方便以后進(jìn)一步擴(kuò)展。另外所使用軟件與資源需考慮其合法性,不得侵犯彵人版權(quán)與隱私。經(jīng)濟(jì)方面要考慮初期所需投入的軟硬件費(fèi)用是否符合預(yù)算,相關(guān)設(shè)備與資源的投入應(yīng)與其實(shí)際應(yīng)用規(guī)模相符,同時(shí)還需要考慮后期服務(wù)器等基礎(chǔ)設(shè)備維護(hù)費(fèi)用問(wèn)題,保證其在服務(wù)期內(nèi)可有效使用。
教學(xué)參考資源云服務(wù)平臺(tái)投入使用需完成兩方面的內(nèi)容,即軟件平臺(tái)構(gòu)建與電子資源收集。軟件平臺(tái)有自主開(kāi)發(fā)、外購(gòu)或外包、采用開(kāi)源程序定制等多種方式,幾種方式各有優(yōu)缺點(diǎn)。自主開(kāi)發(fā)需要組織專業(yè)技術(shù)團(tuán)隊(duì),對(duì)技術(shù)要求較高,開(kāi)發(fā)周期較長(zhǎng);外購(gòu)與外包費(fèi)用相對(duì)較高,特別是后期的維護(hù)及功能更新費(fèi)用,較難保證。綜合比較,利用開(kāi)源程序定制比較適合,優(yōu)先考慮選用開(kāi)源軟件進(jìn)行適當(dāng)?shù)亩ㄖ苼?lái)實(shí)現(xiàn)教學(xué)參考資源云平臺(tái)構(gòu)建。在基礎(chǔ)設(shè)施方面,可充分利用現(xiàn)有IT基礎(chǔ)架構(gòu)平臺(tái),減少自主采購(gòu)、上架過(guò)程,加快業(yè)務(wù)上線進(jìn)程,有效降低IT運(yùn)維成本。在應(yīng)用設(shè)計(jì)方面,可以充分利用已有的開(kāi)源代碼,減少開(kāi)發(fā)費(fèi)用與難度,節(jié)省開(kāi)發(fā)時(shí)間。但開(kāi)源軟件往往需要修改定制,這要求具有一定的技術(shù)力量。電子資源的收集主要通過(guò)外購(gòu)、用戶上傳的方式,如果以前具有教學(xué)參考資源平臺(tái),初期可以把相關(guān)資源遷移到新的云架構(gòu)平臺(tái)使用。
對(duì)于中等規(guī)模的高校,學(xué)生用戶人數(shù)約20000人左右,教師用戶約2000人左右,按每個(gè)學(xué)生用戶10G,教師用戶50G計(jì)算,總共需要300T存儲(chǔ)空間??紤]到實(shí)際應(yīng)用中,并非所有用戶均會(huì)使用全部所有空間,300T的空間預(yù)算基本可滿足要求。另一個(gè)需要考慮的問(wèn)題是網(wǎng)絡(luò)帶寬需求,由于教學(xué)參考資源很多是多媒體音頻、視頻,在上傳、下載時(shí)對(duì)網(wǎng)絡(luò)帶寬要求較高,同時(shí)對(duì)服務(wù)器的處理能力也有一定要求。此外還需要考慮到除有線接入外,移動(dòng)終端通過(guò)無(wú)線接入,需要考慮網(wǎng)絡(luò)連接并發(fā)數(shù)的余量。根據(jù)以上需求,考慮采用三臺(tái)聯(lián)想ThinkSystem SR650機(jī)架式服務(wù)器,各服務(wù)器配置雙Intel Xeon Silver 4110 CPU,256GB內(nèi)存,10塊10T 7.2K熱插拔SATA硬盤(pán),2塊480G熱插拔固態(tài)硬盤(pán),采用RAID 5,實(shí)際可用存儲(chǔ)空間約270T,在服務(wù)器上安裝虛擬機(jī),用虛擬機(jī)來(lái)作為文件服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器和應(yīng)用服務(wù)器。
平臺(tái)部署從層次上可以分為4層,即文件存儲(chǔ)層、數(shù)據(jù)庫(kù)層、Web應(yīng)用層、負(fù)載均衡層。選擇Virtu?albox作為虛擬機(jī),在物理機(jī)上共創(chuàng)建5臺(tái)Virtualbox虛擬機(jī)[7],3 臺(tái)虛擬機(jī)上安裝 RHEL(Red Hat Enter?prise Linux)6.5 64位操作系統(tǒng),運(yùn)行以ownCloud定制的教學(xué)參考資源軟件平臺(tái),以MySQL Galera Clus?ter[8]作數(shù)據(jù)庫(kù)存儲(chǔ),以 GPFS(General Parallel File System)[9]作共享文件存儲(chǔ),另以兩臺(tái)虛擬機(jī)安裝haproxy[10]與keepalived[11]實(shí)現(xiàn)負(fù)載均衡功能,在其中一臺(tái)虛擬機(jī)上以ClusterControl監(jiān)測(cè)和管理數(shù)據(jù)庫(kù)集群[12]。相關(guān)功能節(jié)點(diǎn)如圖2所示。
圖2 教學(xué)參考資源云服務(wù)平臺(tái)功能節(jié)點(diǎn)
應(yīng)用層教學(xué)參考資源管理軟件采用ownCloud定制來(lái)實(shí)現(xiàn)。ownCloud[13]是一款開(kāi)源代碼的文件同步和共享應(yīng)用軟件,采用php與mysql開(kāi)發(fā),適合于采用私有服務(wù)器搭建云存儲(chǔ),支持跨平臺(tái)文件共享服務(wù)、圖片音樂(lè)和文檔等文件預(yù)覽、開(kāi)放API,支持第三方應(yīng)用整合。ownCloud提供了大部分教學(xué)參考資源平臺(tái)所需的功能,需要定制的方面集中在漢化、界面定制、用戶登錄認(rèn)證接口設(shè)計(jì)以及教學(xué)參考資源平臺(tái)所需功能模塊的安裝等幾個(gè)方面。ownCloud原生提供多語(yǔ)言支持,漢化只需要下載提供的簡(jiǎn)體中文漢化包到對(duì)應(yīng)目錄,然后在后臺(tái)設(shè)置即可實(shí)現(xiàn)漢化。ownCloud提供了文件同步和共享功能,通過(guò)安裝應(yīng)用插件可提供教學(xué)參考資源平臺(tái)所需音樂(lè)、視頻在線播放、圖片在線預(yù)覽、PDF在線閱讀等功能應(yīng)用。登錄認(rèn)證方面,現(xiàn)高校數(shù)字化校園建設(shè)都建有統(tǒng)一身份認(rèn)證平臺(tái),其采用輕量目錄訪問(wèn)協(xié)議(lightweight directory access protocol,LDAP),own?Cloud默認(rèn)支持AD、LDAP和OAuth 2.0集成,通過(guò)使用ownCloud AD/LDAP插件應(yīng)用,配置好目錄服務(wù)器的地址、協(xié)議、過(guò)濾條件,就可以轉(zhuǎn)到校統(tǒng)一認(rèn)證目錄上認(rèn)證,實(shí)現(xiàn)統(tǒng)一身份認(rèn)證登錄,同時(shí)在管理后臺(tái)還可以對(duì)用戶組成員關(guān)系、配額、自定義用戶屬性、失敗登錄賬戶鎖定次數(shù)等進(jìn)行設(shè)置。
平臺(tái)功能實(shí)現(xiàn)以后,需要導(dǎo)入初始數(shù)據(jù),投入運(yùn)行??紤]到新舊平臺(tái)數(shù)據(jù)庫(kù)表結(jié)構(gòu)相差較大,以程序化方法導(dǎo)入原有的教學(xué)參考資源難以實(shí)現(xiàn),而初期的高校教學(xué)參考資源平臺(tái)所含資源數(shù)量不大,可采用手工導(dǎo)入來(lái)完成初始資源遷移。
平臺(tái)所需的測(cè)試包括功能測(cè)試和性能測(cè)試。功能測(cè)試驗(yàn)證平臺(tái)是否實(shí)現(xiàn)了所需要的功能,性能測(cè)試驗(yàn)證平臺(tái)能否在實(shí)際運(yùn)行時(shí)滿足多用戶并發(fā)的要求。功能方面,ownCloud提供教學(xué)參考資源的文件存儲(chǔ)與共享功能,通過(guò)添加插件可以實(shí)現(xiàn)一些其他在線查看文檔、討論社區(qū)等功能。在虛擬學(xué)習(xí)環(huán)境空間方面,由于缺乏相關(guān)插件,單機(jī)模式教學(xué)參考資源平臺(tái)的在線學(xué)習(xí)功能需要定制開(kāi)發(fā)。
性能測(cè)試通過(guò)觀察物理服務(wù)器與各虛擬機(jī)實(shí)際運(yùn)行時(shí)的CPU負(fù)荷、內(nèi)存占用來(lái)進(jìn)行。三臺(tái)物理服務(wù)器安裝五個(gè)虛擬機(jī),觀察發(fā)現(xiàn),物理機(jī)與虛擬機(jī)的CPU負(fù)荷基于處于在0-35%之間,在并發(fā)數(shù)達(dá)到100并發(fā)用戶時(shí),各物理機(jī)與虛擬機(jī)的CPU負(fù)荷仍低于35%。每個(gè)虛擬機(jī)分配內(nèi)存32G,內(nèi)存占用平均在15%左右,峰值不足25%。
采用云存儲(chǔ)模式構(gòu)建教學(xué)參考資源平臺(tái)具有計(jì)算資源與存儲(chǔ)資源可動(dòng)態(tài)管理、自適應(yīng),能更好實(shí)現(xiàn)教學(xué)資源的共享與移動(dòng)存取,有效提升教學(xué)參考資源管理與服務(wù)的水平。選用開(kāi)源軟件來(lái)構(gòu)建教學(xué)參考資源云服務(wù)平臺(tái),有效降低了建設(shè)成本,可充分利用相關(guān)軟件的社區(qū)服務(wù),保持平臺(tái)的可持續(xù)發(fā)展。
采用開(kāi)源軟件方案來(lái)構(gòu)建云教學(xué)參考資源平臺(tái),對(duì)自有技術(shù)能力提出了一定的要求,需要組建相應(yīng)技術(shù)團(tuán)隊(duì)來(lái)保證項(xiàng)目的完成。項(xiàng)目實(shí)施中,需要在預(yù)算內(nèi)選擇性能良好的服務(wù)器,保證網(wǎng)絡(luò)帶寬,防止基礎(chǔ)設(shè)施低劣影響整體用戶體驗(yàn)。本方案采用3臺(tái)物理服務(wù)器,安裝5臺(tái)virtualbox虛擬機(jī),3臺(tái)虛擬化機(jī)部署Galera MySQL數(shù)據(jù)庫(kù)和GPFS分布式文件系統(tǒng),另兩臺(tái)虛擬機(jī)安裝ownCloud提供Web應(yīng)用服務(wù)和負(fù)債均衡,滿足了20000用戶規(guī)模的應(yīng)用場(chǎng)景,在充分發(fā)揮硬件資源性能的同時(shí),也帶來(lái)了良好的用戶體驗(yàn),得到了用戶的好評(píng)。平臺(tái)投入應(yīng)用的前兩月,平均日訪問(wèn)用戶在150人左右??梢灶A(yù)測(cè),隨著資源量的進(jìn)一步增加,用戶會(huì)進(jìn)一步增加。后期需進(jìn)一步收集用戶反饋,進(jìn)行功能與資源方面的改進(jìn),同時(shí)開(kāi)發(fā)更多的定制功能模塊。