999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

高并發需求下VR 遠程教育平臺的設計與優化

2024-07-24 00:00:00陳知新李竹村王曼寧
電腦知識與技術 2024年17期

摘要:在遠程教學中引入VR技術對系統的存儲容量、帶寬以及并發能力提出了更高的要求。采用微服務架構搭建遠程教育平臺,可以實現各業務子模塊的無狀態彈性運行,并通過容器平臺作為底層支撐,滿足高并發和高可用需求。集群化部署對象存儲技術可為VR遠程教育平臺提供海量的存儲空間,同時分攤用戶訪問流量,實現負載均衡。Galera和Elasticsearch數據庫集群的多主特性,使底層數據庫在分布式部署情況下保持強一致性。壓力測試結果表明,該設計方案能夠有效提高平臺的并發性能。

關鍵詞:VR;遠程教育平臺;高并發;高可用;集群化部署

中圖分類號:TP315 文獻標識碼:A

文章編號:1009-3044(2024)17-0114-03 開放科學(資源服務)標識碼(OSID) :

隨著國家對新型基礎設施建設的大力投入,5G 通信網絡的覆蓋范圍不斷擴大,預計到2025年底,全國將實現5G網絡的基本覆蓋[1]。5G網絡所具備的高速率和低延時特性,消除了制約VR(虛擬現實)技術應用發展的障礙,使VR技術用于遠程教育教學成為可能。本研究針對VR遠程教育平臺對海量存儲、高帶寬和高并發需求進行分析,設計了一套適合高并發需求的VR遠程教育平臺。

1 需求分析

1.1 提供沉浸式學習體驗

給用戶帶來沉浸式體驗是VR技術的優勢與特色。目前主流的VR媒體攝錄與編碼包括半球面畸變法、正方體擬合、腰鼓畸變法等多種模式[2]。其中,半球畸變法使用多個簡單的魚眼鏡頭拍攝廣角影像,將拍攝到的球狀影像展開成二維,再按照傳統視頻的方式進行編碼和傳輸,最終通過播放終端還原成球狀的全景影像,是各類VR錄像機最常使用的技術。

各類VR媒體編碼與傳輸對遠程教育平臺沒有額外的功能需求,但隨著頭戴設備技術的發展,實現良好的沉浸式體驗需要較高的視頻分辨率。根據實測,4K像素的VR視頻在頭戴設備上才能勉強達到高分屏播放普通720p視頻的效果,但依然存在顆粒感。因此,VR遠程教育平臺必須支持8K以上視頻的流暢播放,這對帶寬需求、存儲需求、服務器端的編碼性能和終端的解碼性能都提出了更高要求。

1.2 提供交互功能

VR 遠程教育平臺的交互功能主要包含兩個方面:一是VR視頻本身所提供的全景互動體驗,用戶可以通過終端設備控制觀看視角,點擊視頻中的標記點實現互動;二是提供在線實驗測試環境,例如為常規專業提供的客觀題在線測試,以及為工程類學科提供的虛擬仿真平臺[3]。

1.3 具備高級別的安全性與可靠性

在安全性方面,VR遠程教育平臺根據其行業用途的不同,需執行的信息安全等級保護也有所差異。教育屬于社會公共服務,涉及民生,根據《信息安全等級保護管理辦法》,或對社會執行構成損失的信息系統至少需要執行安全保護等級二級標準,系統架構及所需的模塊組件必須足夠成熟且安全可控。

在可靠性方面,遠程教育平臺一般要求7×24小時不間斷運行,并設計至少能覆蓋5萬用戶。實際上,在遇到冰災、疫情等需要大范圍支持遠程教學的情況下,用于單一高校的并發訪問量可達2~8萬人。而根據湖南省教育統計快報的數據,用于省、市等不同級別、不同階段教育的平臺并發數需求如表1所示。

基于對大量VR教學視頻進行編碼測試,錄制8K/ 30fps視頻的原始碼率約為50Mbps,這意味著在默認情況下,單臺常規服務器最多只能支持約2 000人的并發用戶。為了滿足較大的區域覆蓋需求,需要采用集群化部署的方式進行優化。

2 技術選型

基于上述需求,我們對流媒體傳輸協議、內容存儲、數據庫及全文索引、運維與部署等方面的關鍵技術進行了分析和選型。

2.1 流媒體傳輸協議

當前主流的流媒體傳輸協議包括RTP(RTCP、RTSP、RTMP) 、MMS、HLS等。其中,RTP協議與MMS 協議相似,都將音視頻數據進行編碼封裝,輔以傳輸控制數據和傳輸質量監控機制,提供穩定可靠的音視頻在線體驗。由于帶寬優化和防私接保護等優勢,這些協議在早期被廣泛應用。

HLS(HTTP Live Streaming) 協議是蘋果公司提出的一種基于HTTP的流媒體傳輸協議[4]。它的重要特征是將媒體文件切片存儲,并通過HTTP協議進行分發和重組,不依賴特定的服務端和客戶端軟件,具有良好的兼容性和可擴展性,適合大型網絡視頻服務平臺,也同樣適合VR遠程教育平臺。當前,YouTube、優酷、bilibili等知名平臺均使用HLS協議提供服務。

2.2 內容存儲

本平臺采用分布式部署的MinIO作為內容存儲。MinIO支持S3協議,沒有存儲對象數量限制,單個文件最大支持5TB[5],即使不對VR視頻進行切片,也能滿足所有課程需求。MinIO可支持32個節點組成集群,每個節點同時接入集群內網和外網,通過內網實現互聯,外網提供服務,訪問任意節點都能讀取集群中的任意內容。

通過糾刪碼技術,MinIO可保護數據免受硬件故障和數據損壞,即使丟失一半節點的硬盤,也可以讀取和恢復數據,具有優秀的可靠性。MinIO支持旁路服務,即直接通過接口面向用戶提供讀寫網址,用戶可以直接將文件寫入MinIO或從MinIO下載數據,減輕業務服務端訪問壓力。

2.3 數據庫與全文索引

在高并發場景下,遠程教學互動帶來的高頻次數據庫讀寫可能形成性能瓶頸。根據湖南師范大學智慧校園平臺的實踐經驗,當并發數超過5 000時,用戶認證業務可能導致單節點數據庫運行滿負荷,訪問開始出現卡頓及無響應。

為滿足成本和安全需求,本項目采用開源的MariaDB+Galera集群作為數據庫。其優勢包括:一是不增加額外開發成本,所有數據庫訪問與SQL語句編寫與單節點部署無異,僅在嚴格控制數據讀寫次序的業務中需注意采用事務封裝,避免數據不一致和死鎖問題;二是Galera集群不區分主從節點,不需讀寫分離操作,任何節點的寫入都通過同步機制分發到所有節點,保障數據一致性[6]。

針對MariaDB不提供原生中文全文索引的問題,測試結果表明像Mroonga這樣的插件在高并發場景下表現不佳,容易導致數據庫鎖死和宕機。因此,本平臺采用 Elasticsearch 提供全文索引支持。Elastic? search支持分布式部署,具備良好的中文分詞效果,對包含過億文檔的索引依然能保持良好的檢索效率,并提供完善的分類匯總統計功能[7]。

2.4 運維與部署

在設計之初,我們考慮到平臺的通用性,即該平臺既可以小規模部署,滿足較小覆蓋范圍的需求,在硬件資源有限的情況下也能正常運行;也可以支持大覆蓋、高并發的業務需求。平臺部署的組件和模塊盡可能支持彈性部署和動態擴容,即在出現訪問瓶頸時,能夠通過簡單配置增加運行實例和集群節點,避免出現大規模的數據遷移和系統重建操作。

基于上述要求,平臺采用容器化方式進行部署。對于用戶覆蓋較小、負載較輕的平臺可在單節點Docker環境中部署運行;對于覆蓋區域較廣、并發需求較高的平臺,采用Rancher作為Kubernetes管理平臺。其優勢如下:管理與業務分離,業務的高負載不會影響管理平臺的運行;業務節點可動態擴容,當硬件資源不足時,可以非??旖莸卦黾庸濣c,并將現有的業務實例遷移至新節點;也可通過簡單操作增加或減少實例數量,快速響應可能發生的訪問量驟增;邏輯簡單、操作便捷,容易形成固定模式的運維手冊,在發生非程序BUG引起的宕機故障時,按照檢查點清單逐一排查即可解決問題[8]。

3 功能模塊設計

在業務服務端,平臺采用微服務架構設計,將用戶認證、課程管理、視頻切片預處理、內容檢索與呈現等功能模塊單獨封裝,并盡可能支持無狀態、多實例運行。所有功能模塊采用RESTful風格的Web API提供訪問接口,模塊間通訊則由MQTT協議通過消息中間件提供實時的信號通知。

3.1 身份認證

平臺采用獨立封裝的OAuth2授權協議模塊來提供身份認證功能。當用戶訪問平臺業務時,業務后端接口會讀取請求頭中的Token令牌,如果令牌無效則將用戶重定向到身份認證模塊。身份認證模塊支持密碼驗證、短信驗證、微信掃碼驗證等多種方式,并為驗證成功的用戶頒發新的Token令牌。令牌遵循JWT 標準,其優勢在于令牌驗證是基于簽名算法的,服務端通過計算驗證簽名有效即可確認用戶的合法性,無須到數據庫中查詢用戶信息,也不產生I/O開銷,相比傳統的基于Session會話的身份驗證模式性能更優[9]。

3.2 課程管理

課程管理由三部分組成:

一是課程元數據的增刪改查操作,主要包括課程名稱、層次、內容摘要、授課教師,課時與章節的描述等內容,其業務邏輯類似于CMS系統。

二是非結構化的課件管理,滿足在線備課、課件及文檔資料的上傳和編輯等需求。我們采用WOPI+ Office Online來支撐,業務端通過WOPI協議創建一個在線文檔的句柄,編輯和在線瀏覽都由受托管的Of? fice Online來完成,文檔的內容也全部保存在MinIO 對象存儲中。

三是課程視頻的管理,這一部分由MinIO提供的PresignedPutObject接口實現,即業務端通過接口獲取一個預上傳的地址,教師則通過UI直接將視頻文件傳輸至MinIO中保存,存儲完成后將結果寫回業務數據庫。這樣可以實現無狀態、多實例運行,數據庫及I/O 壓力降至最低。

3.3 視頻切片預處理

由于HLS協議需要對視頻進行切片預處理[10],故設計了這一獨立模塊來實現。具體業務邏輯如下:

在Kubernetes集群中運行一組Agent,這些Agent 接入消息中間件以偵聽通知,等待預處理任務。教師上傳課程視頻后,會創建一個預處理任務,并將其推送至任務隊列中。同時通過MQTT協議推送一個廣播通知,告知全體Agent有新任務待處理。當前空閑的Agent收到通知后,會向課程管理模塊請求執行任務,課程管理模塊則從任務隊列中取出一個任務進行派發。Agent獲得任務后,從MinIO讀取完整的視頻文件,后端調用ffmpeg工具執行視頻切片操作,生成ts 格式的視頻序列以及m3u8索引。然后將ts序列和索引回寫至MinIO,向課程管理端報告預處理任務已完成。如果任務執行過程中出現異?;虺瑫r,課程管理模塊會標記任務的異常狀態,并重新分配給其他Agent重試。顯然,在這種機制下,各Agent均獨立運行,支持動態擴容,方便檢查與維護。

3.4 前端呈現

在Web瀏覽器端,平臺采用Hls.js腳本來支持課程視頻的播放。在手機端或VR終端中,采用支持HLS 協議的VR播放器來支持全景視頻的播放。由于前述的ts視頻序列和m3u8索引均存放在MinIO中,因此前端呈現之前需要通過PresignedGetObject接口獲取對象的下載地址,并采用HTTP重定向的方式將對索引及內容的請求導向MinIO。這樣業務端只負責解析地址并重定向,所有的IO和流量負載均由MinIO集群承擔,會自動分攤到所有的節點上。因此,當VR遠程教育平臺需要支持更高的并發訪問時,只需對MinIO集群進行擴容即可。另外,當實際情況超出預估時,也可以通過增加一個集群的方式來實現擴容,這需要在業務端啟用MinIO多集群的隨機分配功能,即在創建課程時,明確此課程對應的MinIO集群。而當單一課程負載超標時,則需要將課件資源在多個MinIO 集群上進行同步。

4 平臺架構

根據前述的需求及功能模塊設計,在高并發需求下整個平臺架構分為業務后端、對象存儲、數據湖三個板塊。如圖1所示,圖中右部區域為業務后端板塊,oss區域為對象存儲板塊,左下區域為數據湖板塊,各板塊的組織結構概述如下:

業務后端是平臺的核心板塊,其底層支撐為可動態擴容的k3s(一種輕量化的Kubernetes業務集群),另有一個Kubernetes集群作為業務集群的管理端,提供Rancher工具供運維人員使用。中層是按需編排的各類微服務模塊,包括身份認證(OAuth2) 、課程管理(CMS) 、視頻處理Agent池(VPS) 等。用于支撐各微服務模塊調度及通訊的各類協議與組件也可以放在業務集群中運行,包括MQ消息中間件(我們選用的是RabbitMQ,其他支持MQTT協議的中間件亦可)、支持WOPI協議的文檔管理組件等。

對象存儲板塊是存放VR遠程教育平臺海量音視頻數據和課件資料的區域,由一個或多個MinIO集群組成。對象存儲板塊的具體規劃需要對平臺的并發訪問量和容量需求進行評估,配置足夠的節點服務器和硬盤空間。每個節點服務器均需配置雙網卡,分別接入互聯網和業務內網,并保障充裕的帶寬,避免因在線人數過多導致的網速瓶頸。如平臺需要覆蓋全國且用戶量特別巨大(達到國家智慧教育大平臺這種量級),還可以考慮引入第三方CDN來進行內容分發。

數據湖板塊主要包含一組MariaDB Galera集群和一組Elasticsearch集群??紤]到一些第三方組件在設計時并未考慮支持數據庫集群,我們有三種解決方案:

1) 直接指定連接集群中的一臺服務器,將集群當作單節點使用。由于Galera集群和Elasticsearch集群都沒有主從之分,因此數據將自動在集群中同步,不會影響業務正常運行。這么做的缺點是將會導致各集群節點的負載無法平衡,增加服務停止響應的風險。

2) 在業務內網增加一個用于內部名稱解析的DNS服務器,設置一個內部域名指向全部集群節點的IP地址,依靠TCP/IP協議底層的邏輯來實現負載均衡。這種做法通常有效,但在某些組件上依然會指向一個固定的節點,無法完全起到負載均衡的作用。

3) 部署一個Nginx作為負載均衡。這種做法的缺點是犧牲了集群的高可用特性,因為一旦Nginx崩潰,業務也將隨之宕機。

5 總結

本文提出了一種VR遠程教育平臺設計方案。該方案在設計之初充分考慮了高并發與高可用的實際需求,采用了最新的理念和前沿技術進行規劃,理論上具備極高的性能與穩定性。部分模塊在湖南師范大學進行了生產環境測試。在數據庫集群和多實例運行的情況下,響應速度和穩定性相比同類系統有顯著提升。在5萬并發的壓力測試中,訪問成功率由18%提升至95%,顯示出顯著的效果。

【通聯編輯:唐一東】

基金項目: 2021 年湖南省普通高等學校教學改革研究項目,基于5G+VR 技術的中小學教師繼續教育研學場景構建及其應用研究(項目編號: HNJG-2021-0404)

主站蜘蛛池模板: 亚洲成a人片77777在线播放| 国产在线小视频| 成人国产三级在线播放| 欧美日韩北条麻妃一区二区| 欧美福利在线观看| 国产精品亚洲片在线va| 国产欧美精品专区一区二区| 白浆视频在线观看| 国产免费a级片| 国产一级精品毛片基地| 激情综合五月网| a级毛片网| 亚洲欧美日韩中文字幕在线一区| 亚洲性日韩精品一区二区| 久久精品这里只有国产中文精品| h视频在线播放| 制服丝袜国产精品| 午夜a视频| 欧美日韩在线成人| 久久精品亚洲热综合一区二区| 亚洲av日韩综合一区尤物| 国产在线精品人成导航| 国产极品嫩模在线观看91| 国产成人免费高清AⅤ| 国产免费人成视频网| 无码国内精品人妻少妇蜜桃视频| 欧美日本激情| 另类欧美日韩| 免费一级大毛片a一观看不卡| 中文字幕久久精品波多野结| 欧美在线中文字幕| …亚洲 欧洲 另类 春色| 免费不卡在线观看av| 久久精品嫩草研究院| 国产一区二区三区免费观看| 日韩色图区| 中文字幕乱妇无码AV在线 | 她的性爱视频| 97国产精品视频自在拍| 国产精品自在在线午夜区app| 日韩成人免费网站| 男女精品视频| 91九色视频网| 五月丁香在线视频| 免费毛片在线| 国产人碰人摸人爱免费视频| 亚洲无码高清免费视频亚洲| 亚洲成a人片| 99尹人香蕉国产免费天天拍| 亚洲区一区| 亚洲综合一区国产精品| 国产在线第二页| 99激情网| 国产欧美日韩免费| 免费99精品国产自在现线| 国产精品欧美激情| 三级欧美在线| 日韩高清欧美| 国产成人av大片在线播放| 亚洲一本大道在线| 欧美激情第一区| 中文字幕无线码一区| 一本久道久久综合多人| 日韩无码视频网站| 91视频99| 激情亚洲天堂| AV无码一区二区三区四区| 欧美另类精品一区二区三区| 米奇精品一区二区三区| 3p叠罗汉国产精品久久| 国产在线观看第二页| 日本午夜精品一本在线观看| 精品伊人久久大香线蕉网站| 国产成人综合亚洲网址| 99视频只有精品| 亚洲第一成年网| 久久国产高潮流白浆免费观看| 色婷婷综合在线| 中文字幕在线看视频一区二区三区| 国产精品亚洲五月天高清| 亚欧美国产综合| аⅴ资源中文在线天堂|