基于私有云的在線學習交流平臺的設計與實現
來源:用戶上傳
作者:劉波
摘 要:針對當前在線教學過程中缺乏交流互動的問題,本文設計了一套基于私有云的高校在線學習交流平臺。系統通過OpenStack搭建私有云服務,使用SpringBoot和Vue框架實現前后端分離并開發了在線學習交流平臺系統。通過用戶自主上傳學習資源、自由標記知識點問題和自由加入討論組,實現學習過程中的實時交流。通過本平臺,一方面解決了部分高校信息化建設基礎條件受限的問題;另一方面解決了在線教學過程中無人交流和無法實時解惑的問題。
關鍵詞:在線教學;OpenStack;前后端分離;討論組;交流
*基金項目:江蘇省現代教育技術研究課題(2022-R-100280)
自新冠疫情爆發以來,全國高校逐漸進入停課不停學的狀態,高校的授課方式也由線下教學轉變為在線教學。在線學習最早由《美國教育白皮書》提出,是指通過計算機和互聯網等新技術形式進行知識內容傳播和便捷學習的新型教育方法[1]。在國內,慕課網[2]、職教云等各類在線學習平臺的出現,也為高校實現在線教學提供了技術支撐。在線學習為學生提供了豐富的學習資料和多樣化的學習方式,逐漸成為學生獲取知識的有效手段之一。為了研究在線學習是否能夠普及使用,有學者開始組織學生對在線學習、在線教學和模塊化教學進行評價[3]。結果顯示,有部分學生對在線學習體驗不滿意。其主要原因包括:1)環境與技術因素。例如基礎條件不足,同時缺乏互聯網使用經驗以及必要培訓[4];2)在線教學過程中僅能夠在線留言和回復,無法對學習內容進行實時交流。
為了解決這些問題,學者們也進行了探索。劉小英[5]等提出通過WebSocket通訊技術,實現實時交流,提高了師生互動性;安磊[6]等開發了一個基于ThinkPHP框架的遠程學習交流平臺,實現了網上交流和資料下載;張國平[7]開發了適用于軟件工程專業的學習交流平臺,實現了學生從被動聽講到主動參與的轉化。學者們的這些工作,在一定程度上解決了在線學習過程中的交流問題,在經濟發展較好的地區及高校能夠快速地推廣使用。然而,這些信息化系統通常需要一定的硬件條件支撐,有些還需要較高的系統配置才能夠使用,同時還需要一定的后期維護。在一些基礎條件不足的高校,可能無法進行此類學習交流平臺系統的建設。
隨著云計算平臺的不斷發展,對于基礎設施的要求逐漸降低。因其具備虛擬性、可靠性、通用性、可伸縮性、按需使用等特點,使其在數據安全、計算效率、經濟成本等方面都有巨大的優勢。因此,使用云平臺構建定制化的數字系統也逐漸被各企事業單位所接受。私有云作為一種單獨為企事業單位創建的云服務,只為企事業單位內部用戶使用,最大程度地增加了數據的安全性。本文主要將私有云技術應用到在線學習交流平臺中,以期用比公有云更低的經濟成本,滿足高校學生在學習過程中的實時交流需求,同時為高校的信息化建設提供參考。
1 需求分析
本系統主要目標為構建學習問題交流、分享發布學習資源、學習資源管理的在線交流平臺。根據用戶需要,系統主要涉及三種角色: 學生、教師和管理員。
1)學生用戶具有維護個人基本信息;查看各類通知公告;瀏覽課程資料、教師資料;瀏覽課程進度;針對課程信息的交流、留言;針對課程或某一問題創建、編輯、加入和退出討論組;課程相關資源的上傳下載等功能。
2)教師用戶除學生用戶的功能外,還具有通知公告的編輯;課程資料編輯;課程大綱、教案、先導和后續課程的編輯等功能。
3)管理員用戶可以使用平臺的所有功能,除學生和教師用戶的功能外,還具有基礎信息維護[8](包含院系、專業、班級、課程、學生、教師等基礎信息的初始化及導入導出);系統的基礎管理;數據字典的設置;學習資源的審核管理等功能。
2 系統設計
2.1 系統架構
本系統包含基A設施層、服務管理層和用戶層,其平臺架構圖如圖1所示。基礎設施層將多臺服務器資源進行整合和存儲,由服務管理層對用戶數據進行管理,在用戶層進行結果展示。
1)基礎設施層:基礎設施層位于云平臺的最底層,包括構成云計算平臺的基礎硬件設施、系統虛擬鏡像、數據管理服務及網絡服務等模塊。該層負責采集物理節點的存儲、網絡、內存等資源,通過虛擬化技術將資源進行處理并整合為統一資源池。資源池內部根據用戶的需要進行動態調整,為系統運行提供了基礎保障。
2)服務管理層:服務管理層為系統的核心層,采用模塊化設計,為平臺提供支撐,其數據資源來源于基礎設施層。具有元數據服務、資源庫服務、數據計算服務、在線交流平臺系統門戶服務等模塊。通過服務管理層實現在線學習交流系統的開發、配置、維護等。學習交流資源存儲在云端,學生可以便捷的上傳和下載。
3)用戶層:用戶層一般由瀏覽器構成,包含PC端瀏覽器和移動端瀏覽器。用戶根據請求地址對數據資源進行請求操作,數據經由基礎設施層和服務管理層的處理,最終以友好的方式向用戶展現。
2.2 私有云設計
云平臺構建采用基于OpenStack的IaaS架構,OpenStack云計算平臺的優勢在于模塊耦合度低、組件靈活配置等[9]。云平臺構建時使用OpenStack中的核心組件及其功能如表1所示。
云平臺用戶經由Keystone認證,使用Horizon的UI界面創建虛擬機,鏡像服務由Glance提供。由Neutron進行IP地址的配置,再由Cinder為虛擬機實例提供塊存儲。本系統使用五臺物理機,具有網絡節點、控制節點和計算節點,網絡節點配置如表2,組網結構如圖2。
2.3 系統功能設計
在線學習交流平臺具有在線論壇和系統管理兩個模塊。在線論壇主要包括:在線學習、論壇板塊列表、論壇帖子列表、帖子交互(包括回復、引用、點贊、收藏等)、熱門內容(時間段內討論最多的問題)、關鍵字搜索等功能;系統管理主要包括[10]:論壇板塊管理、論壇帖子管理、討論組管理、學習資源管理(審核資源合法性)、初始化管理、通知公告和系統管理等模塊。具體系統功能結構如圖3所示。
1)課程資源管理
課程資源由授課教師進行編輯維護。教師負責維護課程的課程標準、教學大綱、教學設計、課程知識點、教學課件、課后習題等必要資源。對于多個教師同時教授一門課程時,可以同步維護課程資源。
2)資源上傳下載
用戶可以按照課程維度和知識點維度,自由上傳和下載相關學習資源。上傳資源類型支持Word、PPT、Excel、PDF、MP4、AVI、MOV、WMV和RMVB等。對于上傳的學習資源,可以選擇公開或獨有,但公開的學習資源,需要經過管理員審核后才會被其他用戶所見。
3)資源在線學習
用戶可以自由查看課程相關資源,資源支持在線瀏覽學習,同時開始記錄學習時長。對于用戶瀏覽的非視頻資源,系統每隔15 min檢測一次客戶端是否活躍。當發現用戶無任何交互動作后,暫時計時,直到用戶重新激活學習狀態。學習資源也支持下載到本地觀看,線下學習時間不被系統記錄。
4)知識點標記
學生對于任意知識點問題,可以進行手動標記,可以看到已在該知識點下進行標記的學生列表。
5)討論組
當知識點被標記后,平臺自動以“專業-學科-知識點名稱”創建一個關于該知識點的討論組,學生可以自由選擇加入、邀請列表內學生加入和退出該討論組。討論組內可以進行實時交流,交流的消息記錄可以在云端永久保存。學生可以自由討論關于該知識點的見解或疑問,也可以針對該知識點選擇某一有授課記錄的教師來進行回復。受邀教師將收到平臺短消息推送,教師可以直接回復該問題,而不會自動加入該討論組。同一教師每日最多可以被選擇5次來進行答疑。
6)學生學習統計
學生可以查看當前已學習的課程信息,包括已學課程列表、在學課程列表、在學課程已完成進度、單科和全科學習時長,同時可以選擇是否公開個人學習狀態及信息。系統可以統計排名全站用戶的公開信息。
7)學習資源管理
用戶上傳的各類學習資源,都處于待審核狀態,管理員負責管理審核該類資源。對于Word、PPT、Excel等文件內容,首先由系統平臺掃描文件內是否存在違禁詞字典表中的內容,然后由管理員手動審核正文內容是否存在意識形態等問題,審核無誤后該資源才能被其他用戶所查看。對于視頻資源,系統平臺不支持視頻直接上傳,必須先上傳至第三方站點,再將該外鏈地址保存至系統平臺,合法的第三方站點由管理員在字典表中進行設置。
8)初始化管理
管理員可以上傳導入學?;举Y料,如院系信息、專業信息、課程信息、班級信息、學生信息、教師信息等,同時自動檢測是否存在對應的課程論壇板塊。若該板塊不存在,則自動按照學院―專業―課程的目錄結構創建該板塊。課程板塊創建完畢后,自動將有授課任務的教師列入該板塊的管理者。
3 私有云的構建
3.1 基礎環境配置
物理機硬件采用8核心CPU、64 Gb內存×4、16 Tb企業盤×4,操作系統使用Centos7.7。配置好W絡節點、防火墻,數據庫使用MySQL。
3.2 Keystone 服務安裝
Keystone為OpenStack提供認證服務,其安裝過程如下:
1)基礎環境安裝后,登錄MySQL并創建Keystone數據庫,創新系統用戶并賦予操作權限;
2)獲取對應的管理口令,安裝軟件服務和配置文件;
3)執行身份引導服務;
4)配置管理員用戶,創建項目、域、用戶、角色。創建項目作為OpenStack的系統項目,所有系統服務加入該目。
3.3 Glance 服務安裝
Glance為OpenStack提供鏡像服務,為用戶的上傳、修改、導出、刪除虛擬機鏡像提供服務支撐,其安裝過程如下:
1)登錄MySQL并創建 Glance數據庫。
2)創建用戶、角色和API服務端點
3)安裝和配置Glance服務。
4)同步Glance數據庫,啟動并測試Glance服務。
5)測試獨有鏡像并上傳。
3.4 Nova服務安裝
Nova為OpenStack提供計算服務,可以用來管理虛擬機實例,其安裝過程與Glance服務的安裝基本一致:
1) 登錄MySQL并創建Nova數據庫。
2)創建用戶、角色和API服務端點。
3)安裝配置Nova。
4)同步Nova數據庫,啟動并測試Nova服務。
3.5 Neutron服務安裝
Neutron為OpenStack提供網絡服務,其對防火墻、交換機、負載均衡器等都有較好的支持。其安裝過程如下:
1) 登錄MySQL并創建Neutron數據庫。
2)創建用戶、角色和API服務端點。
3)安裝配置Neutron,修改內核配置文件。
4)初始化創建網絡。
3.6 Horizon服瞻滄
Horizon為OpenStack提供友好的交互界面,用戶可以使用控制臺完成項目管理。軟件安裝后,修改用戶域和角色并重啟服務,即可登錄OpenStack控制臺。
3.7 Cinder服務安裝
Cinder為OpenStack 提供塊存儲服務,同時提供實例對象的虛擬磁盤。其安裝過程如下:
1)登錄MySQL并Cinder 數據庫。
2)創建用戶、角色和API服務端點。
3)安裝配置Cinder。
4)同步Cinder數據庫,啟動并測試Cinder服務。
4 系統實現
本系統基于開源軟件若依進行開發。若依采用前后端分離技術,后端核心采用SpringBoot集成MyBatis、Spring Security、Redis等框架,前端集成ES6、Vue、Axios、Element-UI等框架,數據庫使用MySQL。
4.1 知識點標記
用戶可以選中知識點內容,當監聽到鼠標松開事件后,通過window.getSelection方法獲取選中的文本。將選中的文本內容和當前行數的文本做配對,從而獲取選中文本的索引值,若未有用戶標記過則定義新的索引值,標記的內容使用span標簽包裹并隨機設置背景色。然后通過標簽彈窗的方式,列出已標記該知識點的其他用戶,用戶間可以進行交互操作。其中,知識點添加點擊事件的關鍵代碼如下:
4.2 討論組實時交流
討論組的實時交流基于WebSocket通訊協議實現。用戶通過WebSocket的onOpen事件進入討論組,輸入交流內容后通過WebSocket的send方法發送給服務端。服務端收到交流內容后,經過解析處理再轉發給討論組內其他用戶,用戶通過WebSocket的onMessage方法接收交流內容。其中,用戶接收交流內容的方法如下:
當用戶在線學習時,發生以上任意動作,則累加動作間的時長。使用window.onload和 window. onbeforeunload方法監聽頁面加載和頁面關閉;使用pageshow和pagehide監聽瀏覽器前進或后退;使用visibilitychange監聽Tab切換、桌面切換和電腦睡眠。
4.4 熱門內容
用戶可以按時間維度查看高頻關鍵詞,關鍵詞統計源包括論壇帖子內容、知識點活躍度和討論組內關鍵詞等。關鍵詞以詞云的方式進行顯示,鼠標滑動到詞云時,顯示其詞頻數量及占比,如圖4所示。
5 結束語
本文系統分析了當前高校“停課不停學”狀態下學生所遇到的問題,并基于OpenStack構建了一個高校在線學習交流的私有云平臺。私有云通過硬件虛擬化、存儲虛擬化和網絡虛擬化等技術,能夠最大程度地保證用戶數據的安全性和可靠性;在線學習交流平臺為學生在學習過程遇到的問題,提供了良好的解決途徑。本文對高校進一步完善在線教學的能力提供了參考。
參考文獻:
[1] 孫金鑫.面向學習效能提升的智能在線學習平臺設計與實現[D].沈陽:中國科學院大學(中國科學院沈陽計算技術研究所),2021.
[2] 習軍.MOOC趨勢下高校網絡公選課在線學習平臺的設計與實現[J].科技風,2018(16):62.
[3] TAJA-ON E, MIRAS R, JUROLAN C. E-Learning: teaching effectiveness to conventional teaching in undergraduates amid COVID-19 Pandemic[J]. Open Access Library Journal, 2021, 8(11): 1-10.
[4] MEKKY S T. On-line learning assessment: Egyptian universities as a case study[J].International Journal of Information and Education Technology, 2021, 11(10): 471-478.
[5] 劉小英,劉強.在線學習交流平臺的設計與實現[J].攀枝花學院學報,2021,38(2):62-67.
[6] 安磊,張波.在線學習平臺設計與實現[J].電腦編程技巧與維護, 2020(3):17-19.
[7] 張國平,李亞麗,劉申申.基于SSH的軟件工程學習交流平臺的設計[J].科技資訊,2017,15(36):13-16.
[8] 謝兵,趙小梅.基于B/S架構的高校教學管理平臺設計與實現[J].電腦編程技巧與維護,2011(18):57-67.
[9] 裴棟,張巧燕,蒙曉燕.“雙高”建設任務背景下的云計算基礎實訓平臺的設計與實現[J].信息與電腦(理論版),2021,33(13):107-110.
[10] 鄭占,馬才學.土地開發整理項目預算系統設計研究[J].國土資源科技管理,2010,27(1):108-112.
轉載注明來源:http://www.hailuomaifang.com/8/view-15446089.htm