淺談高并發(fā)在線學(xué)習(xí)系統(tǒng)中的關(guān)鍵技術(shù)_第1頁(yè)
淺談高并發(fā)在線學(xué)習(xí)系統(tǒng)中的關(guān)鍵技術(shù)_第2頁(yè)
淺談高并發(fā)在線學(xué)習(xí)系統(tǒng)中的關(guān)鍵技術(shù)_第3頁(yè)
淺談高并發(fā)在線學(xué)習(xí)系統(tǒng)中的關(guān)鍵技術(shù)_第4頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、    淺談高并發(fā)在線學(xué)習(xí)系統(tǒng)中的關(guān)鍵技術(shù)    郎?!菊?1世紀(jì)以來(lái),隨著信息技術(shù)飛速發(fā)展,教育信息化、高等教育大眾化的普及,基于互聯(lián)網(wǎng)的在線教育蓬勃發(fā)展。為了提高教學(xué)質(zhì)量,各高校不約而同地推出了質(zhì)量管理和監(jiān)督的相關(guān)措施。在線學(xué)習(xí)系統(tǒng)中同時(shí)在線學(xué)習(xí)的人數(shù)至少在數(shù)千人以上,對(duì)系統(tǒng)額并發(fā)能力提出了嚴(yán)峻的考驗(yàn)和挑戰(zhàn),本文從以下幾個(gè)方面介紹了高并發(fā)在線學(xué)習(xí)系統(tǒng)中使用的技術(shù)?!娟P(guān)鍵詞】高并發(fā)  在線學(xué)習(xí)系統(tǒng)  技術(shù)1、什么是在線學(xué)習(xí)系統(tǒng)在線學(xué)習(xí)系統(tǒng)是通過(guò)計(jì)算機(jī)互聯(lián)網(wǎng),或是通過(guò)手機(jī)無(wú)線網(wǎng)絡(luò),在一個(gè)網(wǎng)絡(luò)虛擬課堂進(jìn)行網(wǎng)絡(luò)學(xué)習(xí)的教育模式。通過(guò)遠(yuǎn)程

2、視頻授課、網(wǎng)上自主學(xué)習(xí)、互動(dòng)交流、文檔共享等方式,讓教師與學(xué)生再網(wǎng)絡(luò)山形成一種教與學(xué)互動(dòng)和自助學(xué)習(xí)氛圍。目前在線學(xué)習(xí)系統(tǒng)大致分為兩種,以學(xué)習(xí)管理驅(qū)動(dòng)的平臺(tái)和以教學(xué)資源驅(qū)動(dòng)的平臺(tái)。翻轉(zhuǎn)課堂、微課和慕課都是其具體的表現(xiàn)形式。翻轉(zhuǎn)課堂:老師創(chuàng)建課程視頻發(fā)布到網(wǎng)絡(luò)上,學(xué)生利用課外時(shí)間觀看課前視頻,在課堂上與老師面對(duì)面交流,最后共同協(xié)作完成課程學(xué)習(xí)與作業(yè)。微課:教師制作5-10分鐘左右的視頻教程。因?yàn)槲⒄n具有小、短、精等諸多特點(diǎn),學(xué)生可以選擇性的學(xué)習(xí)。只要學(xué)生愿意學(xué)習(xí),就能隨時(shí)點(diǎn)擊觀看“微課”,可以保持終身學(xué)習(xí)狀態(tài)。慕課:大興開(kāi)放式網(wǎng)絡(luò)課程,慕課進(jìn)一步推動(dòng)了支持終身學(xué)習(xí)的開(kāi)放教育資源運(yùn)動(dòng),目前已經(jīng)出現(xiàn)了

3、不同形式和風(fēng)格的慕課,它們?cè)趯W(xué)生規(guī)模、公開(kāi)程度、是否完全再現(xiàn)和事發(fā)后完成課程或形成互聯(lián)社區(qū)等方面各有千秋。高并發(fā)是互聯(lián)網(wǎng)分布式系統(tǒng)架構(gòu)設(shè)計(jì)中必須考慮的因素之一,它通常是指,通過(guò)設(shè)計(jì)保證系統(tǒng)能夠同時(shí)并行處理很多請(qǐng)求。高并發(fā)相關(guān)常用的一些指標(biāo)有響應(yīng)時(shí)間,吞吐量,每秒查詢率qps,并發(fā)用戶數(shù)等。高并發(fā)在線學(xué)習(xí)系統(tǒng)一般是指系統(tǒng)用戶在萬(wàn)人以上,同時(shí)在線人數(shù)達(dá)到千人以上的教學(xué)系統(tǒng)。2、如何提升系統(tǒng)的并發(fā)能力2.1 三層架構(gòu)。系統(tǒng)的整體架構(gòu)使用的是分層設(shè)計(jì)思想,通過(guò)模塊化設(shè)計(jì)每一層架構(gòu),層間與模塊間通過(guò)較少的結(jié)構(gòu)通信保證低耦合性。這樣的設(shè)計(jì)是提升系統(tǒng)并發(fā)性、可用性的基礎(chǔ)。2.2 集群負(fù)載均衡。單一的負(fù)載均衡

4、器有單點(diǎn)故障的系統(tǒng)風(fēng)險(xiǎn),為了保證系統(tǒng)的高可用性,采用雙負(fù)載均衡器與心跳檢測(cè)其構(gòu)建主從負(fù)載均衡結(jié)構(gòu),負(fù)載均衡器的選擇有多種,大體可以分為2大類:軟件負(fù)載均衡和硬件負(fù)載均衡。軟件負(fù)載均衡可以選擇nginx,硬件負(fù)載均衡可以選擇radware。2.3 混合數(shù)據(jù)存儲(chǔ)?;旌蠑?shù)據(jù)存儲(chǔ)利用不同的數(shù)據(jù)存儲(chǔ)模式,將相對(duì)獨(dú)立的數(shù)據(jù)集以合適的方式存儲(chǔ),在保證系統(tǒng)數(shù)據(jù)一致性的技術(shù)提高并發(fā)性與可用性?;旌蠑?shù)據(jù)存儲(chǔ)的核心還是關(guān)系型數(shù)據(jù)庫(kù),關(guān)系數(shù)據(jù)庫(kù)高性能穩(wěn)定性的特性是其它非關(guān)系型數(shù)據(jù)庫(kù)和其它存儲(chǔ)方式無(wú)法比擬的。對(duì)于高頻操作的數(shù)據(jù),除了在數(shù)據(jù)庫(kù)中存儲(chǔ)外,還應(yīng)該在緩存中存儲(chǔ)。持久化緩存采用日志的方式保證緩存的非易失性。換入換

5、出緩存是純內(nèi)存的緩存,當(dāng)容量達(dá)到閾值,利用算法換出一塊老的緩存,加需要使用全文檢索引擎來(lái)存儲(chǔ)數(shù)據(jù)與索引。對(duì)于用戶海量的歷史數(shù)據(jù)、日志數(shù)據(jù)等數(shù)據(jù)應(yīng)定期存入數(shù)據(jù)倉(cāng)庫(kù)存儲(chǔ),便于后續(xù)數(shù)據(jù)分析?;旌蠑?shù)據(jù)存儲(chǔ),充分利用各個(gè)存儲(chǔ)方式的有事,有效提升系統(tǒng)的并發(fā)性和可用性。2.4 靜態(tài)分離對(duì)于不經(jīng)常變化或者模板化的數(shù)據(jù)、界面可以抽象成靜態(tài)資源,例如商品詳情描述界面,商品圖片。對(duì)于經(jīng)常變化或者個(gè)性化的數(shù)據(jù)與界面可以抽象詳細(xì)數(shù)據(jù)??蛻舳藢?duì)靜態(tài)資源的并發(fā)訪問(wèn)性能要遠(yuǎn)高于對(duì)從架構(gòu)角度,可以將靜態(tài)資源與動(dòng)態(tài)資源分離,靜態(tài)資源保存在專門(mén)的靜態(tài)資源web 服務(wù)器或者 cdn上以及客戶端中,動(dòng)態(tài)資源從業(yè)務(wù)邏輯服務(wù)器上請(qǐng)求獲取,

6、從而提高系統(tǒng)的訪問(wèn)性能與并發(fā)能力。3、業(yè)務(wù)實(shí)現(xiàn)的策略3.1分區(qū)緩存策略從業(yè)務(wù)的角度考慮,數(shù)據(jù)應(yīng)該切分到不同的分片。數(shù)據(jù)分片上層分別添加一層各自的緩存。緩存使用 redis 持久化內(nèi)存數(shù)據(jù)庫(kù)實(shí)現(xiàn),確保緩存不會(huì)丟失。流媒體服務(wù)器對(duì)數(shù)據(jù)的讀寫(xiě),大部分是直接與緩存層交互,很大程度上提高了讀寫(xiě)性能。大部分的讀寫(xiě)操作多是基于這部分隨著緩存內(nèi)視頻的讀寫(xiě),有些熱視頻狀態(tài)變化成了冷視頻,如果學(xué)生查看視頻,就需要同時(shí)讀取緩存和數(shù)據(jù)庫(kù),合并讀取信息作為讀取結(jié)果。3.2事務(wù)降級(jí)策略讀取視頻需要使用事務(wù)保證 all or nothing,以及事務(wù)的隔離級(jí)別( 鎖實(shí)現(xiàn)) 來(lái)確保并發(fā)事務(wù)中部分代碼片段的before or

7、after 隔離性,讀取操作是一個(gè)完整的事務(wù),事務(wù)過(guò)程的設(shè)計(jì)方案有 2 種:方案1:讀取事務(wù)開(kāi)始后,馬上進(jìn)入子事務(wù),首先檢測(cè)視頻是否足夠,然后完成一系列操作,更新后臺(tái)數(shù)據(jù),提交整個(gè)事務(wù)??紤]到并發(fā)的事務(wù),在 redis 上需要序列化執(zhí)行,那么,事務(wù)到提交很長(zhǎng)一段時(shí)間內(nèi)不能并發(fā)。所以方案1對(duì)高并發(fā)的支持比較差。方案2:讀取視頻事務(wù)開(kāi)始后,先完成一系列非事務(wù)的操作,到事務(wù)末尾,進(jìn)入事務(wù),檢測(cè)視頻是否存在,然后更新,提交事務(wù)。方案2將事務(wù)縮短了很多,提高了一定的并發(fā)能力。但是,考慮如下情況: 當(dāng)視頻播放完成,這時(shí)候仍有大量學(xué)生讀取視頻,開(kāi)始事務(wù),都執(zhí)行完然后進(jìn)入事務(wù),陸續(xù)檢測(cè)到內(nèi)存不足,都要回滾事務(wù)

8、。那么大批事務(wù)都要回滾到內(nèi)存,有的比較長(zhǎng)的一段處理過(guò)程。所以回滾問(wèn)題,會(huì)給系統(tǒng)帶來(lái)很多不必要的資源浪費(fèi)。4、總結(jié)本文針對(duì)在線學(xué)習(xí)系統(tǒng)高并發(fā)性的需求進(jìn)行研究,談?wù)劯卟l(fā)系統(tǒng)中的關(guān)鍵技術(shù)。這些技術(shù)分為 2 類: 架構(gòu)級(jí)高并發(fā)高可用策略和業(yè)務(wù)級(jí)高并發(fā)高可用策略。架構(gòu)級(jí)策略包括: 三層架構(gòu)、集群負(fù)載均衡、混合數(shù)據(jù)存儲(chǔ)、靜態(tài)分離等技術(shù)。以及業(yè)務(wù)層面的分區(qū)緩存策和事務(wù)降級(jí)策略。參考文獻(xiàn):1王小戲.高并發(fā)高可用零售 o2o 交易系統(tǒng)的架構(gòu)設(shè)計(jì)與業(yè)務(wù)實(shí)現(xiàn)j.計(jì)算機(jī)與現(xiàn)代化, 2016(04).2鞏曉悅.基于個(gè)性化推薦的在線學(xué)習(xí)系統(tǒng)研究與實(shí)現(xiàn)d.北京郵電大學(xué),2019.3王承軍.高并發(fā)大數(shù)據(jù)在線學(xué)習(xí)系統(tǒng)中的關(guān)鍵技術(shù)研究d.中國(guó)地質(zhì)大

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論