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

電視臺節(jié)目遷移技術的研究與實現(xiàn)

2012-09-25 04:33:02文丨李繼青唐繼勇白新躍
中國傳媒科技 2012年20期
關鍵詞:方法

文丨李繼青 唐繼勇 白新躍

(電子科技大學,成都 611731)

現(xiàn)今電視臺已經用視頻服務器的硬盤播出系統(tǒng)取代了傳統(tǒng)的錄像機播出,并逐漸形成電視全臺制作播出網(wǎng)絡,目前電視臺所有節(jié)目有三種存儲方式:在線存儲(On-Line)、近線存儲[1](Near-Line)和離線存儲(Off-Line),也分別稱為一級、二級、三級存儲。在線存儲[2]方式是將所有的節(jié)目都用硬盤保存起來,直接存儲在視頻服務器中,當有播出請求時,就可以立即取得數(shù)據(jù),訪問速度快,但視頻服務器存儲容量有限制;離線存儲使用磁盤陣列、光盤、磁帶作為節(jié)目存儲的載體,其最大的優(yōu)點就在于其廉價的存儲成本,以及其靈活的擴展性能,但訪問速度較慢,效率較低。近線存儲方式有機將離線存儲和在線存儲的優(yōu)點結合,能實現(xiàn)較大容量節(jié)目的存儲,而且遷入在線存儲速度也比離線遷入快。由于高清/標清節(jié)目所需要磁盤容量較大,目前在電視臺中一般用多臺節(jié)目存儲服務器作為二級存儲設備。如圖1,在電視全臺網(wǎng)的節(jié)目播出和節(jié)目管理中,需要在一級、二級和三級存儲間進行相互的遷入和回遷。本文重點以二級存儲遷移到在線存儲為討論對象,其它情況的遷移與此類似。

圖1 電視臺節(jié)目存儲三級架構

1 節(jié)目遷移需求分析

近線存儲方式的節(jié)目當需要進行播出時需要遷移到視頻服務器(在線存儲方式),或者對于有主備二級存儲的電視全臺網(wǎng)系統(tǒng)中,二級存儲之間也需要進行節(jié)目的遷移。目前電視臺節(jié)目的遷移過程一般是基于FTP協(xié)議先下載再上傳。要實現(xiàn)遷移任務,現(xiàn)在較為通用遷移步驟如下(以近線遷移到在線為例):(1)將近線存儲的節(jié)目下載到節(jié)目遷移服務器磁盤的特定目錄下。(2)將遷移服務器中已下載的節(jié)目遷移到視頻服務器(在線存儲),如果有主備冗余機制,則同時遷移到主備視頻服務器進行在線存儲。(3)如果遷移到視頻服務器成功,則刪除自動遷移服務器中下載的節(jié)目,完成遷移任務。

從以上步驟可以看出,遷移服務器作為中間橋梁實現(xiàn)遷移,每個節(jié)目的遷移都需要首先存入遷移服務器,完成任務后又刪除節(jié)目。由于現(xiàn)在電視臺節(jié)目一般都是大容量的音視頻文件,遷移過程中對遷移服務器要求高,要頻繁的讀寫磁盤,導致遷移速度慢,如果遇到臨時應急情況,需要緊急遷移,基于以上的遷移過程在效率上得不到保證。針對先下載后上傳的遷移方法中的不足之處,對于采用分級存儲[3-4]的遷移系統(tǒng)功能分析如下:(1)下載和上載過程并發(fā)執(zhí)行,下載一部分文件數(shù)據(jù)的同時,上載這部分數(shù)據(jù)到目標存儲服務器,以提高遷移效率。(2)傳統(tǒng)遷移方法利用硬盤作為臨時存儲空間,但磁盤速度遠遠低于內存讀寫速度,故應使用內存作為臨時存儲空間,提高遷移的速度。(3)內存容量的有限性,對于大容量文件,不能分配與文件大小匹配的內存作為臨時存儲區(qū),因而需設計一塊內存空間供循環(huán)讀寫,實現(xiàn)內存空間的高效利用。

針對以上需求分析,在實際電視廣播工程實踐開發(fā)中,提出了循環(huán)內存流遷移的方式來滿足以上需求,避免了頻繁的磁盤I/O讀寫操作,設計合適的循環(huán)內存流,能有效實現(xiàn)多個遷移任務并發(fā)執(zhí)行。

2 循環(huán)內存流設計與實現(xiàn)

循環(huán)內存流設計的基本思想是:在內存空間中開辟出指定大小的內存塊(例如10M),一個Writer線程從局域網(wǎng)中某FTP服務器不斷下載數(shù)據(jù)到該內存塊中;另一個Read線程源源不斷從內存塊中取出數(shù)據(jù)進行遷移到局域網(wǎng)中另外的FTP服務器。兩個線程共用一塊內存區(qū),并能循環(huán)對此內存區(qū)進行讀寫。如圖2所示,沿著循環(huán)流的方向,Read線程讀取數(shù)據(jù)總在Write線程寫入之后,以保證每次能讀到數(shù)據(jù);Write線程每次寫到流末尾,即進行跳轉到流開始處,從頭開始寫入數(shù)據(jù),Read線程與Write線程類似。為了能保證循環(huán)讀寫的順利進行,假設每次讀寫的數(shù)據(jù)量為Count(一般為32K),每次讀數(shù)據(jù)時要求不超過已寫入數(shù)據(jù)的位置,而每次寫時要求寫入的位置的數(shù)據(jù)已經讀出,每次寫完時,總有Write線程所指向內存流的位置比讀線程所指向位置大于或者等于Count成立。兩個線程同步進行,不停循環(huán)進行讀寫操作,從而實現(xiàn)文件基于循環(huán)內存流的遷移過程。

為了實現(xiàn)數(shù)據(jù)的準確傳輸,不會產生數(shù)據(jù)的丟失和讀寫誤操作,必須進行線程間同步,即保證讀數(shù)據(jù)之前,已經有數(shù)據(jù)寫入,循環(huán)再次寫入時,該內存塊數(shù)據(jù)已經被讀出。實現(xiàn)中采用面向對象技術,編寫了TMemoryStream類實現(xiàn)循環(huán)內存流,以下對循環(huán)內存流的實際工作原理關鍵性節(jié)點進行闡述。

圖2 循環(huán)內存流原理示意圖

類中部分關鍵字段定義。Memory Capacity:設定內存流的大?。籆ount:每次讀出或者寫入流的大小。FPosition:本次進行讀或者寫流的位置指針; WritePosition :寫位置指針,指向遷移文件已經寫入了的文件位置;ReadPosition:讀位置指針,指向遷移文件已經讀出了的文件位置;IdMutex:保證讀寫線程同步的互斥量。例如,要實現(xiàn)從二級存儲A服務器遷移到一級存儲B視頻服務器,某次遷移的文件大小為1G,假設內存流設置為10M,每次讀入或者寫入流的數(shù)據(jù)為32K。依據(jù)字段定義Memory Capacity為10*1024*1024(單位為字節(jié));Count為32768;WritePosition和ReadPosition取值范圍為0到1*1024*1024*1024(1G),且為Count的整數(shù)倍;F Position每次讀出或者寫入時需要計算,計算方法為WritePosition或者ReadPosition對F Capacity求余,這樣能順利實現(xiàn)讀寫到末尾重新從內存流頭部開始,實現(xiàn)循環(huán)內存流。

圖3 循環(huán)內存流類Write方法流程

類中關鍵方法實現(xiàn)。SetCapacity方法,該方法主要在初始化內存流時指定內存大小,即指定MemoryCapacity大小,并用malloc函數(shù)開辟循環(huán)內存流所需空間。Seek方法用于實現(xiàn)每次寫入或者讀出時計算FPositon,以確定要每次進行操作的內存流位置。Write和Read方法分別用于下載近線存儲文件到內存流和上載內存流到在線存儲服務器。

由于需要并發(fā)進行遷移,讀寫也要求并發(fā)進行,循環(huán)內存流設計中用IdMutex互斥量保證并發(fā)時數(shù)據(jù)讀寫的準確性。以Write方法流程作為詳細闡述,簡化流程如圖3,讀過程類似。進行某次數(shù)據(jù)寫入之前,必須保證寫指針在讀指針之前,這樣做能有效保證寫入數(shù)據(jù)安全性,因而寫流程進入后首先需要判斷是否滿足寫的條件,具體為WritePosition和ReadPosition之差是否大于或者等于Count。如果不滿足,則進行等待,一直等不到條件成立,7秒后退出,滿足則進入互斥量保護的寫入過程。寫過程首先找到本次要寫入的位置,然后判斷這次寫入是否在流的最后位置,如果在最后位置,最后位置又沒有Count容量供本次寫入,則需要進行分次寫入,先寫滿流末尾部分,之后再流的開始部分再寫入本次剩余的數(shù)據(jù),不需要分次直接一次寫滿Count數(shù)據(jù)到內存流。最后改變WritePosition位置,釋放互斥量,返回寫入數(shù)據(jù)量,結束寫過程。

3 測試及小結

圖4 循環(huán)內存流遷移方法測試結果對比圖

圖4為測試對比結果,測試環(huán)境為兩臺FTP服務器,一臺遷移服務器,三臺機器配置如下:windowsServer2003系統(tǒng),CPU型號為Pentium(R) Dual-Core E5200,內存2G,F(xiàn)TP軟件為Server-U。對比先下載后上傳方法和循環(huán)內存流遷移方法可以發(fā)現(xiàn),循環(huán)內存流效果比先下載再上傳速度要快了將近一倍。對于自動遷移服務器來說,采用循環(huán)內存流的遷移方法大大減輕了遷移服務器的負擔,遷移服務器可以工作更為穩(wěn)定且延長磁盤使用壽命,在實際應用過程中,基于循環(huán)內存流的遷移系統(tǒng)能在遷移過程中實現(xiàn)任務并發(fā)操作,已經成功在多個地方電視臺上線使用,具有較大的實際意義。

[1]肖艷平.數(shù)字電視播出系統(tǒng)中的近線存儲[J].中國數(shù)字電視,2011(2):82.

[2]何建,唐繼勇.硬盤播出數(shù)據(jù)存儲技術分析[J].中國有線電視,2005(1):19.

[3]趙曉楠,李戰(zhàn)懷.分級存儲管理技術研究[J].計算機研究與發(fā)展,2011(3):48.

[4]羅敏.數(shù)據(jù)分級存儲策略[J].城建檔案,2009(5).

猜你喜歡
方法
中醫(yī)特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數(shù)學教學改革的方法
河北畫報(2021年2期)2021-05-25 02:07:46
化學反應多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學習方法
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 国产喷水视频| 狠狠ⅴ日韩v欧美v天堂| 国产福利在线免费| 亚洲男人的天堂在线| 亚洲精品免费网站| 欧美成人第一页| 91无码人妻精品一区| 九九九九热精品视频| 91精品aⅴ无码中文字字幕蜜桃 | 91小视频在线观看| 国产亚洲精品自在线| 性视频一区| 日韩AV手机在线观看蜜芽| 国内精品视频在线| 日本不卡视频在线| 免费看黄片一区二区三区| 国产JIZzJIzz视频全部免费| 亚洲第一成年免费网站| 亚洲热线99精品视频| 欧美日韩在线国产| 亚洲福利一区二区三区| 波多野结衣中文字幕久久| 91精品在线视频观看| 欧美乱妇高清无乱码免费| 国产在线欧美| 亚洲一级毛片免费观看| 岛国精品一区免费视频在线观看| 国产精品久久久久久久久kt| 特级精品毛片免费观看| 国产精品hd在线播放| 狠狠亚洲婷婷综合色香| 国产福利小视频在线播放观看| 伊人久热这里只有精品视频99| 四虎精品黑人视频| 中文字幕在线观看日本| 91免费精品国偷自产在线在线| 亚洲香蕉伊综合在人在线| 狠狠v日韩v欧美v| 在线看片中文字幕| 91在线精品麻豆欧美在线| 亚洲中文字幕无码爆乳| 黄色三级毛片网站| 4虎影视国产在线观看精品| 99热最新网址| 国产成人91精品| 麻豆国产精品一二三在线观看 | 五月婷婷综合在线视频| 一本久道久久综合多人| 园内精品自拍视频在线播放| 国产麻豆精品手机在线观看| 国产福利2021最新在线观看| 日韩A∨精品日韩精品无码| 丝袜久久剧情精品国产| 免费aa毛片| 国产精品无码一区二区桃花视频| 亚洲国产精品无码久久一线| 日韩欧美中文字幕一本| 日本不卡在线播放| 亚洲欧美一区二区三区麻豆| 91色爱欧美精品www| 风韵丰满熟妇啪啪区老熟熟女| 在线国产资源| 成人日韩精品| 91精品亚洲| 97久久免费视频| 人妻精品久久久无码区色视| 激情综合五月网| 亚洲毛片在线看| 久青草网站| 亚洲中文制服丝袜欧美精品| 国产精品福利一区二区久久| 伊人查蕉在线观看国产精品| 亚洲一区精品视频在线| 久久精品一品道久久精品| 国内精品伊人久久久久7777人| 亚洲精品国产日韩无码AV永久免费网 | 区国产精品搜索视频| 亚洲国产91人成在线| 高清码无在线看| 日韩精品资源| 国产亚洲精品97AA片在线播放| 青青草原偷拍视频|