• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      開源edX信息化教學平臺的雙機熱備技術研究

      2016-09-10 07:22:44陽波劉輝王進湯清明
      中國信息技術教育 2016年17期
      關鍵詞:負載均衡教育信息化

      陽波 劉輝 王進 湯清明

      摘要:edX信息化教學平臺因功能強大且代碼完全開源而備受關注。在分析edX平臺功能模塊、技術構架和存儲結構的基礎上,筆者基于Nginx服務器、keepalived和磁盤陣列技術,提出了一種用于構建edX服務器的雙機熱備技術,它能提高edX平臺的數據可靠性,增強服務器的穩(wěn)定性和負載能力。

      關鍵詞:開源edX;教育信息化;Nginx;雙機熱備;負載均衡

      中圖分類號:G642 文獻標識碼:A 論文編號:1674-2117(2016)17-0095-04

      ● 引言

      構建技術先進、功能強大、教學方式靈活的教學信息化平臺是MOOC開展的前提條件。目前已經成熟且商業(yè)化的教學平臺有Udacity、Coursera、edX等,其中edX平臺面向全世界免費開源所有代碼和課程,這為各國高校進一步設計滿足自身教學要求的教學平臺提供了一種全新的選擇方式,如清華大學、北京大學等高校紛紛基于開源edX設計了自己的教學平臺,取得了良好的教學效果。開源edX平臺結構設計先進、功能豐富,但是體系復雜,運維難度較高,所以如何實現平臺數據安全、服務器不間斷運行,是自主運維edX平臺的關鍵技術之一。

      筆者在分析edX教學平臺的功能模塊、系統架構和數據存儲方式的基礎上,研究了磁盤陣列和雙機熱備份技術的特點,提出了一個雙機熱備和負載均衡的edX服務器部署方案,該方案具有服務器部署簡單、數據安全性高和運行可靠的特點。

      ● 開源edX平臺的技術框架與數據存儲方式

      1.開源edX平臺的功能與技術框架

      開源edX平臺默認搭建在64位的Ubuntu系統上,課程管理模塊(Content Management System,CMS)、學習管理模塊(Learning Management System,LMS)和通用模塊(Common Moudle,CM)是它的3個核心模塊,每個核心模塊又由若干個子功能模塊組成。課程管理模塊中最基本的模塊是課程存儲模塊,負責創(chuàng)建和管理課程的教學內容信息。學習管理模塊包括課件功能模塊、代碼codejail模塊、討論模塊、評分模塊等。其中課件功能模塊負責從數據庫中讀取課程相關信息,并將課程內容顯示給用戶;代碼codejail模塊用于檢查學生錄入Python代碼的合法性,保護系統的安全;討論模塊支持教學平臺的在線討論和交流;評分模塊實現學生作業(yè)、在線考試的成績評價,并保存評價結果。通用模塊主要包括用戶注冊、日志、認證、輸入檢查、消息隊列管理等功能。其中日志功能用于記錄學生和教師的學習和教學行為;認證功能包括內部認證和外部認證兩種,用于用戶登錄平臺時進行身份合法性驗證。edX教學平臺各模塊之間既相互獨立,又相互聯系,構成功能強大的教學平臺。

      開源edX平臺運行在主流的Nginx服務器上,采用MVC編程設計模式開發(fā),MVC設計模式的核心思想是實現業(yè)務邏輯、數據和界面顯示的分離,修改界面不需要重新編寫業(yè)務邏輯,從而提高了程序設計的效率。edX的Web應用程序基于Django框架,采用Python、Ruby、NodeJS等多種程序語言混合編寫。Django框架通過中間件處理所有的HTTP請求,從而降低了各模塊之間的耦合程度,對于用戶的每一個HTTP請求,由一組中間件處理。edX界面與后端服務器的數據通訊采用異步更新技術Ajax方式實現,用戶無須刷新整個頁面就可以向服務器傳送數據,減少數據通訊,降低占用帶寬的時間,從而降低對服務器和網絡的要求,提升整個系統的用戶體驗。界面編程采用JQuery標準庫和SCSS框架(CSS預處理器框架)設計,不需要考慮瀏覽器的兼容性問題,在提高界面用戶體驗的同時,提高了界面設計的效率,edX平臺的技術框架如圖1所示。

      2.開源edX平臺的數據存儲方式

      開源edX平臺采用數據庫與文件系統結合的方式進行數據管理,同時采用MySQL和MongoDB兩種類型的數據庫技術。MySQL數據庫用于存儲改動較少的結構化數據信息,如用戶注冊信息、配置信息等;MongoDB數據庫用于存儲數據量大、訪問頻繁的非結構化數據信息,并且為用戶輸入提供數據緩存。MongoDB是一種面向文檔的,實現分布式文件存儲的非關系型數據庫,具有模式自由、動態(tài)查詢、二進制數據存儲、云計算的特點。edX平臺利用MongoDB解決了平臺需要存儲大量短視頻、學生作業(yè)和課程資料的問題。除此之外,統計日志、圖片等信息則以文件的方式存儲在系統中,通過Python的文件操作函數對文件進行管理。因此,開源edX平臺數據存儲方式是在傳統文件系統的基礎上,融合兩種數據庫技術進行數據存取操作,能滿足大規(guī)模數據訪問的需要。

      ● 數據可靠性與服務器熱備技術研究

      雖然開源edX平臺功能強大、性能高效,但隨著系統規(guī)模擴大,用戶增多,文件總量從GB向TB級增長,教學平臺的數據可靠性和安全運行成為一個重要問題。

      目前常用的存儲技術有磁盤陣列、網絡存儲、云存儲等多種方式,其中磁盤陣列因性能優(yōu)異、操作簡單而備受關注。磁盤陣列技術(Redundant Array of Independent Disks,RAID)是一種將多塊獨立的物理硬盤按不同的方式組合起來,邏輯構成一個硬盤(邏輯硬盤)的技術,于1987年由美國加州大學伯克利分校首次提出。磁盤陣列控制器將數據以分段的方式存儲在不同的磁盤中,存取數據時,陣列中的相關磁盤一起動作,大幅減少了數據的讀取時間。磁盤陣列技術不但使用簡單,存儲速度快,還可以實現數據自動備份,一旦某個磁盤的數據損壞,它能利用備份信息迅速將數據恢復,提高了用戶數據的安全性和可靠性。RAID5技術是一種性價比高的磁盤陣列技術,具有讀取速度快、安全性高、空間利用率高等特點,是目前較為理想的存儲解決方案。

      雖然磁盤陣列技術能解決數據的可靠性問題,但當服務器本身出現問題時,服務仍然會中斷,因此,服務器的雙機或多機備份仍然非常重要。

      雙機熱備是使用兩臺服務器互相備份,共同執(zhí)行同一服務,當一臺服務器出現故障時,在不需要人工干預的情況下,另一臺服務器自動承擔服務任務,保證服務繼續(xù)進行。根據切換方式不同,雙機熱備分為主-備(Active-Standby)方式和雙主機(Active-Active)方式兩種。主-備方式是指一臺服務器處于某種業(yè)務的激活狀態(tài),另一臺服務器處于該業(yè)務的備用狀態(tài);雙主機方式是指兩種不同業(yè)務分別在兩臺服務器上互為主備狀態(tài)。雙機熱備通過心跳監(jiān)測查詢服務器的狀態(tài),一旦發(fā)現對方失效,立即啟動資源接管模塊來接管運行在對方主機上的資源或者服務,從而實現服務的不中斷運行。

      ● 開源edX平臺的雙機熱備和負載均衡設計

      對于中等規(guī)模的高等學校來說,開源edX平臺的主要功能是滿足自身教學改革需求,數據并發(fā)數要求并不是太高,所以開源edX平臺采用Nginx服務器完全能滿足需求。筆者基于Nginx和keepalived技術,提出用磁盤陣列保存數據,用兩臺服務器實現雙機熱備,并配置負載均衡實現服務器的部署。具體方案如下:先配置兩臺服務器與一個磁盤陣列,磁盤陣列采用光纖模塊與服務器相連,然后在兩臺服務器上安裝Nginx軟件,并將磁盤陣列掛載在linux操作系統中,接著將MYSQL、Mongodb和edX安裝在磁盤陣列上,最后安裝并配置keepalived軟件,設置2個虛擬IP地址和DNS地址,其結構如上頁圖2所示。

      Keepalived軟件的核心是VRRP協議,將兩臺服務器虛擬成一臺服務器,對外提供虛擬路由器IP,通過預先設置或競選機制,確認其中一臺服務器為主服務器,另一臺則為備用服務器,且只有主服務器對外提供服務。當Keepalived檢測模塊發(fā)現主服務器失效時,通過VRRP協議發(fā)送通告,僅需幾秒備用服務器便可以接管原來主服務器的網絡功能,從而實現整個平臺的可靠運行。

      另外,為了實現服務器的負載均衡,筆者將兩臺服務器配置為互為主備模式,設置兩個虛擬IP地址Vip1和Vip2,并將它們作為A記錄增加到DNS服務器中,然后DNS服務器根據解析請求隨機分配不同的虛擬IP,從而實現了edX服務器的負載均衡。

      參考文獻:

      [1]王啟浩.論我國MOOC平臺的未來發(fā)展——基于Coursera、edX和學堂在線的對比分析[J].科技與出版,2015(6):108-111.

      [2]王書瑤,王小根,晉步.中外MOOC課程對比研究——以edX和“學堂在線”為例[J].軟件導刊,2014(7):154-156.

      [3]王秀婷.基于edX的MOOC互動交流平臺的設計與實現[D].哈爾濱:哈爾濱工業(yè)大學,2014.

      [4]高峰,楊連賀.Flex技術與Django開發(fā)框架的整合研究[J].計算機與數字工程, 2010,38(1):94-96.

      [5]Annenkov D V,Cherkashin E A.Generation technique for Django MVC web framework using the stratego transformation language[C]//International Convention on Information & Communication Technology Electronics & Microelectronics.2013:1084-1087.

      [6]肖佳,王古城,楊旭,等.雙機熱備與負載均衡的設計與實現[J].電子設計工程,2015,23(18):176-179.

      [7]高俊峰.高性能Linux服務器構建實戰(zhàn):運維監(jiān)控、性能調優(yōu)與集群應用[M].北京:機械工業(yè)出版社,2012.

      作者簡介:陽波(1976.4—),男,湖南冷水江人,教授,碩士生導師,研究方向為傳感器、微/納制造和大數據理論與應用。

      基金項目:本文得到湖南省普通高等學校教學改革研究項目“基于edX開源自主構建地方高校MOOC課程平臺的教學改革研究”支持。

      猜你喜歡
      負載均衡教育信息化
      Linux負載均衡集群技術在網絡服務器中的應用
      軟件導刊(2016年12期)2017-01-21 16:10:11
      Oracle MAA在汽車行業(yè)電子政務平臺中的應用
      軟件導刊(2016年12期)2017-01-21 15:43:08
      異構環(huán)境下改進的LATE調度算法
      如何加強校園信息化建設創(chuàng)學校發(fā)展提速平臺
      基于虛擬仿真技術的地方高校實驗教學探討
      信息技術與教學難以深度融合的成因及解決途徑探析
      科技資訊(2016年19期)2016-11-15 10:19:53
      榆林學院智慧校園系統架構的分析與設計
      基于負載均衡的云資源調度策略研究
      高職學院信息化建設中面臨的問題和思考
      科技視界(2016年22期)2016-10-18 17:29:57
      創(chuàng)新信息技術支撐教學變革
      六枝特区| 龙口市| 明水县| 清水县| 临西县| 汶川县| 会同县| 银川市| 汉沽区| 崇文区| 无极县| 藁城市| 徐水县| 科尔| 双桥区| 黎城县| 怀柔区| 冀州市| 高邑县| 乌拉特后旗| 扬中市| 喜德县| 开封县| 班玛县| 泗洪县| 呼图壁县| 麻城市| 高唐县| 灵寿县| 静海县| 绥滨县| 南宁市| 通辽市| 晋州市| 玛多县| 淄博市| 循化| 岗巴县| 德令哈市| 唐河县| 博乐市|