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

基于Dubbo框架的視頻分享系統(tǒng)分析

2016-08-09 07:23:32翟金亭吳欽卿
中國(guó)新通信 2016年11期
關(guān)鍵詞:頁(yè)面數(shù)據(jù)庫(kù)資源

翟金亭 吳欽卿

【摘要】 當(dāng)今,互聯(lián)網(wǎng)超高速發(fā)展,互聯(lián)網(wǎng)站點(diǎn)暴增,網(wǎng)站的訪問(wèn)量成指數(shù)性激增。適應(yīng)高并發(fā)的網(wǎng)絡(luò)站點(diǎn)急需建立,目前大型網(wǎng)站的解決高并發(fā)訪問(wèn)方式是采用SOA架構(gòu)體系[1]。本系統(tǒng)選擇Dubbo服務(wù)框架,實(shí)現(xiàn)資源搜索服務(wù),資源分析服務(wù),數(shù)據(jù)庫(kù)實(shí)現(xiàn)讀寫分離,redis讀寫分離。本系統(tǒng)主要介紹基于Dubbo技術(shù)開(kāi)發(fā)的分布式視頻分享系統(tǒng)。

【關(guān)鍵字】 Dubbo 分布式架構(gòu) 負(fù)載均衡

互聯(lián)網(wǎng)時(shí)代的到來(lái)催生大量的互聯(lián)網(wǎng)站點(diǎn),隨著訪問(wèn)量的增加,如何應(yīng)對(duì)高并發(fā)帶來(lái)的壓力已成為任何一個(gè)大中型網(wǎng)站都必須考慮的問(wèn)題。視頻分享系統(tǒng)就是一個(gè)分布式系統(tǒng)[3],它是基于Dubbo服務(wù)框架開(kāi)發(fā)的,同時(shí)使用了數(shù)據(jù)庫(kù)讀寫分離、redis讀寫分等離負(fù)載均衡技術(shù)。

一、Dubbo架構(gòu)介紹

Dubbo是阿里巴巴公司開(kāi)源的一個(gè)高性能優(yōu)秀的服務(wù)框架,使得應(yīng)用可通過(guò)高性能的 RPC 實(shí)現(xiàn)服務(wù)的輸出和輸入功能,可以和 Spring框架無(wú)縫集成[2]。Dubbo架構(gòu)共包含五種節(jié)點(diǎn),代表了五種角色,它們是Provider(生產(chǎn)者)、Consumer(消費(fèi)者)、Registry(注冊(cè)中心)、Monitor(注冊(cè)中心)和Container(服務(wù)容器)。Provider是暴露服務(wù)的服務(wù)提供方;Consumer:是調(diào)用遠(yuǎn)程服務(wù)的服務(wù)消費(fèi)方;Registry是服務(wù)注冊(cè)與發(fā)現(xiàn)的注冊(cè)中心;Monitor是統(tǒng)計(jì)服務(wù)的調(diào)用次調(diào)和調(diào)用時(shí)間的監(jiān)控中心;Container: 是服務(wù)運(yùn)行容器。

二、系統(tǒng)總體設(shè)計(jì)

視頻分享系統(tǒng)是基于Dubbo服務(wù)框架開(kāi)發(fā)的,架構(gòu)設(shè)計(jì)的關(guān)鍵是合理地設(shè)計(jì)消費(fèi)者和生產(chǎn)者。系統(tǒng)中只有一個(gè)消費(fèi)者:主站。即用戶可直接訪問(wèn)的項(xiàng)目,用戶所有的服務(wù)都直接由主站提供。本系統(tǒng)提供了兩個(gè)服務(wù):資源搜索服務(wù)、資源分析服務(wù)。資源搜索服務(wù)提供對(duì)站內(nèi)數(shù)據(jù)的檢索功能,資源分析服務(wù)是對(duì)站內(nèi)資源進(jìn)行統(tǒng)計(jì)分析的項(xiàng)目。兩種服務(wù)都為主站提供服務(wù),并且都不直接對(duì)用戶提供任何功能。系統(tǒng)的數(shù)據(jù)庫(kù)使用Mysql集群,緩存使用Redis集群,這樣使得系統(tǒng)具有了良好的性能。

1、資源搜索服務(wù)。資源搜索服務(wù)向外暴露的接口滿足三點(diǎn):1)可以根據(jù)關(guān)鍵字對(duì)索引內(nèi)的資源進(jìn)行檢索;2)支持搜索結(jié)果的分頁(yè)獲取;3)給出關(guān)鍵詞使用分詞器分詞后的結(jié)果。在具體實(shí)現(xiàn)上,接口的內(nèi)部定義兩個(gè)枚舉型,SORT_FIELD和SOURCE_TYPE,分別表示排序字段和資源類型。資源搜索接口聲明一個(gè)方法, String類型參數(shù)的關(guān)鍵字;type枚舉型搜索資源的類型,有MKV(超清)、AVI(普通)、MP4(高清)等取值;sortField也是枚舉型參數(shù),表示排序字段,有UPDATE_TIME(更新時(shí)間)、CREATE_TIME(上傳時(shí)間)、NAME(名稱);返回值Page類型,SourceDo和PageVo可以被所有可以被所有項(xiàng)目引用,是控制層和service層的主要實(shí)體類。

2、資源分析服務(wù)。資源分析在本系統(tǒng)中所占的比重比較小,主要提供的一個(gè)功能為分析視頻資源受歡迎度。資源分析接口聲明一個(gè)方法,此方法的參數(shù)只有兩個(gè),pageNo和pageSize,用于分頁(yè)獲取數(shù)據(jù)。返回值是Page類型,DownLoadCountSourceDo以聚合的方式對(duì)SourceDo進(jìn)行擴(kuò)展,而且該實(shí)體與SourceDo一樣可以被所有項(xiàng)目引用,在服務(wù)消費(fèi)端使用非常方便。

3、主站設(shè)計(jì)。主站controller層依賴的接口中與核心業(yè)務(wù)相關(guān)的接口共有7個(gè)。其中VideoSearchService是資源搜索服務(wù)對(duì)外暴露的接口,SourceAnalyzer是資源分析服務(wù)對(duì)外暴露的接口,SourceService接口聲明了與資源管理相關(guān)的方法,SourceFileService聲明了與視頻文件管理相關(guān)的方法,SourceReportService聲明了與資源舉報(bào)相關(guān)的方法,F(xiàn)ileUploadService聲明了與資源上傳相關(guān)的方法,SourceCollectionService聲明了與資源收藏相關(guān)的方法。

三、系統(tǒng)功能

視頻資源搜索功能:視頻資源搜索過(guò)程中,發(fā)起一個(gè)資源搜索請(qǐng)求,請(qǐng)求將自動(dòng)分發(fā)到sourceController控制器實(shí)體,sourceController直接調(diào)用本地VideoSearchService的search方法,這里VideoSearchService實(shí)體是一個(gè)遠(yuǎn)程服務(wù)代理,代理與服務(wù)提供端進(jìn)行通信,服務(wù)端運(yùn)行本地方法得到返回值,再返回到服務(wù)消費(fèi)端,這就是服務(wù)調(diào)用的整個(gè)過(guò)程。視頻人氣排行功能:人氣排行榜用例的實(shí)現(xiàn)邏輯是,首先Http請(qǐng)求被分發(fā)到sourceController控制器實(shí)體,sourceController直接調(diào)用sourceAnalyzer的getPopularSources方法獲取最受歡迎的資源。系統(tǒng)會(huì)自動(dòng)在頁(yè)面上顯示人氣排行榜前10名,人氣排行榜的推薦就是利用定時(shí)任務(wù)不斷調(diào)用sourceAnalyzer的getPopularSources方法,更新servletContext中最受歡迎資源的列表,這樣就可以在velocity模板引擎渲染velocity模板的時(shí)候直接從內(nèi)存中快速獲取數(shù)據(jù)了。最新資源功能:最新資源查詢的實(shí)現(xiàn)是調(diào)用最新資源查詢調(diào)用的接口SourceService在本地實(shí)現(xiàn),不需要遠(yuǎn)程調(diào)用,邏輯與人氣排行榜的邏輯是一樣的。最新資源也會(huì)在系統(tǒng)頁(yè)面上自動(dòng)顯示前10名,利用定時(shí)任務(wù)不斷從數(shù)據(jù)庫(kù)里讀取最新數(shù)據(jù),刷新內(nèi)存中的最新資源列表,當(dāng)客戶端請(qǐng)求頁(yè)面的時(shí)候直接將數(shù)據(jù)渲染到頁(yè)面上去。資源上傳功能:資源上傳的實(shí)現(xiàn)過(guò)程,資源上傳分為兩步,首先是上傳資源,第二步是添加資源信息,每上傳一次資源,就需要發(fā)起兩次http請(qǐng)求,第一次是上傳文件,第二次是添加文件信息。

四、結(jié)論

Dubbo作為一種分布式網(wǎng)站開(kāi)發(fā)的架構(gòu),可以與Spring框架無(wú)縫集成。具有連通性、健壯性、伸縮性的優(yōu)點(diǎn)。本網(wǎng)站采用Dubbo框架使得系統(tǒng)能承受更大的并發(fā)訪問(wèn)量,具有非常強(qiáng)的應(yīng)用價(jià)值。視頻分享系統(tǒng)的開(kāi)發(fā)解決了四個(gè)關(guān)鍵問(wèn)題:1)搭建穩(wěn)定的Dubbo服務(wù)框架運(yùn)行的環(huán)境;2)合理地設(shè)計(jì)項(xiàng)目間依賴關(guān)系,實(shí)現(xiàn)模塊化開(kāi)發(fā);3)使用Lucene創(chuàng)建索引,做到索引即時(shí)更新;4)使用數(shù)據(jù)庫(kù)負(fù)載均衡、緩存等技術(shù)提升系統(tǒng)的性能。該系統(tǒng)可以動(dòng)態(tài)增加或減少服務(wù)來(lái)應(yīng)對(duì)不同的訪問(wèn)量,使用了緩存、數(shù)據(jù)庫(kù)讀寫分離等技術(shù)加快頁(yè)面的響應(yīng)速度,提升用戶體驗(yàn)。

參 考 文 獻(xiàn)

[1](美) Mark D. Hansen :使用Java Web服務(wù)構(gòu)建SOA,電子工業(yè)出版社, 2009.03

[2]何炎祥:分布式操作系統(tǒng),高等教育出版社,2005

[3]Nicolai M. Josuttis :SOA in Practice: The Art of Distributed System Design,OReilly, 2007.08

猜你喜歡
頁(yè)面數(shù)據(jù)庫(kù)資源
大狗熊在睡覺(jué)
刷新生活的頁(yè)面
基礎(chǔ)教育資源展示
一樣的資源,不一樣的收獲
資源回收
資源再生 歡迎訂閱
資源再生(2017年3期)2017-06-01 12:20:59
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 免费观看成人久久网免费观看| 伊人成人在线| 久久综合九色综合97网| 2021国产精品自拍| 欧洲日本亚洲中文字幕| 午夜无码一区二区三区| 国产精品亚洲综合久久小说| 狠狠色成人综合首页| 91国内在线观看| 91九色视频网| 尤物国产在线| 中日韩一区二区三区中文免费视频| 国产高清毛片| 99免费视频观看| 中字无码精油按摩中出视频| 中文字幕天无码久久精品视频免费| 精品国产黑色丝袜高跟鞋| 播五月综合| 五月天丁香婷婷综合久久| 999福利激情视频| 精品一区国产精品| 亚洲欧洲日韩久久狠狠爱| 欧美19综合中文字幕| 看你懂的巨臀中文字幕一区二区| 无码内射中文字幕岛国片| 91网在线| 国产精品一线天| 五月天香蕉视频国产亚| 国产av色站网站| 亚洲精品麻豆| www.av男人.com| 色精品视频| 欧美成人午夜视频免看| 爽爽影院十八禁在线观看| 麻豆国产在线不卡一区二区| 久久国产精品电影| 激情无码字幕综合| 久久婷婷色综合老司机| 中文字幕乱码二三区免费| 青青草91视频| 亚洲色欲色欲www网| 国产免费福利网站| 午夜不卡福利| 国产综合另类小说色区色噜噜| 久久美女精品国产精品亚洲| 亚洲乱码精品久久久久..| 国产精品欧美激情| 久久五月天国产自| 中文字幕在线看| 国产69精品久久| 好吊色妇女免费视频免费| 色偷偷综合网| 伊人精品视频免费在线| 不卡的在线视频免费观看| 99性视频| 一本大道东京热无码av| 午夜日b视频| 亚洲国产91人成在线| 天天躁狠狠躁| 天天色天天综合网| 亚亚洲乱码一二三四区| 国产成人区在线观看视频| 免费一级无码在线网站| 99er精品视频| 波多野吉衣一区二区三区av| 色婷婷综合激情视频免费看| AV无码无在线观看免费| 免费黄色国产视频| 91福利免费视频| 免费激情网站| 国产性爱网站| 伊人无码视屏| 国产在线观看一区精品| 欧美综合激情| 麻豆AV网站免费进入| 五月天综合婷婷| 欧美成人午夜视频| 欧美色图久久| 国产99视频精品免费视频7| 国产国产人在线成免费视频狼人色| 亚洲无码精品在线播放| 亚洲一区精品视频在线|