本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法和系統(tǒng)。
背景技術(shù):
流媒體技術(shù)的出現(xiàn),使得在網(wǎng)絡(luò)上觀看和傳輸影音文件變?yōu)橐环N現(xiàn)實(shí)。通俗的講,所謂的流媒體技術(shù),就是將視音頻文件經(jīng)過(guò)壓縮處理后,放在網(wǎng)絡(luò)服務(wù)器上進(jìn)行分段的傳輸,客戶端計(jì)算機(jī)不用將整個(gè)的視音頻文件下載到本地,便可以即時(shí)收聽和收看。
但在目前的網(wǎng)絡(luò)帶寬的限制下,為了達(dá)到網(wǎng)絡(luò)上流式傳播文件的目的,視音頻文件經(jīng)過(guò)壓縮處理,減小文件的大小,從而使影音文件的品質(zhì)有所下降。而且,流媒體業(yè)務(wù)是一種寬帶業(yè)務(wù),對(duì)于網(wǎng)絡(luò)帶寬、抖動(dòng)、延遲和丟包率都有較高的要求。因而用戶端在使用流媒體服務(wù)時(shí),尤其是在忙時(shí)段,可能會(huì)產(chǎn)生黑屏、馬賽克、圖像停格、聲音時(shí)斷等現(xiàn)象。為了解決流媒體在播放時(shí)出現(xiàn)的問(wèn)題,隨著流媒體業(yè)務(wù)的發(fā)展,我們需要一種有效的測(cè)試手段以便對(duì)流媒體的播放質(zhì)量狀況進(jìn)行測(cè)試。
現(xiàn)今對(duì)流媒體的測(cè)試手段并不是很多,大致可以分為兩類:1、最原始最簡(jiǎn)單的測(cè)試方法就是讓大量測(cè)試人員在不同時(shí)段、不同的地方點(diǎn)播流媒體,當(dāng)遇到黑屏、馬塞克、圖像停格、聲音時(shí)斷等現(xiàn)象時(shí)作記錄,最后再匯總。這種做法的優(yōu)點(diǎn)是與最終用戶的點(diǎn)播感受一致,但是費(fèi)時(shí)費(fèi)力,測(cè)試人員必須一直仔細(xì)地盯著畫面,很容易疏忽掉一些細(xì)節(jié),而且統(tǒng)計(jì)工作也非常繁瑣;2、使用專門的測(cè)試設(shè)備進(jìn)行測(cè)試,可以模擬打開、關(guān)閉連接,其優(yōu)點(diǎn)就是自動(dòng)化,大大減輕測(cè)試人員的工作量,但是這種測(cè)試手段偏重于對(duì)流媒體服務(wù)器進(jìn)行壓力測(cè)試,測(cè)試設(shè)備不會(huì)真正進(jìn)行播放,無(wú)法真實(shí)模擬用戶的使用場(chǎng)景,當(dāng)然也無(wú)法檢測(cè)到停頓、馬賽克等現(xiàn)象,而且不能同時(shí)支持龐大的數(shù)據(jù)流推送。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法和系統(tǒng),以實(shí)現(xiàn)對(duì)流媒體服務(wù)器的自動(dòng)、高效測(cè)試。
一方面,本發(fā)明實(shí)施例提供一種基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法,包括以下步驟:
將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器;
在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容;以及
記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。
優(yōu)選地,在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容的所述步驟包括:
利用所述測(cè)試腳本創(chuàng)建多個(gè)進(jìn)程以模擬所述多個(gè)客戶端發(fā)送多個(gè)點(diǎn)播請(qǐng)求至所述待測(cè)流媒體服務(wù)器;
根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求計(jì)算需要的網(wǎng)絡(luò)帶寬;以及
根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求和所述網(wǎng)絡(luò)帶寬推送對(duì)應(yīng)的所述媒體內(nèi)容。
優(yōu)選地,在將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器的所述步驟之前,還包括:
檢查所述待測(cè)流媒體服務(wù)器的網(wǎng)絡(luò)環(huán)境狀態(tài)。
優(yōu)選地,在記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)的所述步驟之后,還包括:
根據(jù)所述待測(cè)流媒體服務(wù)器的所述最大并發(fā)流數(shù)評(píng)估所述待測(cè)流媒體服務(wù)器的性能,生成測(cè)試報(bào)告。
相應(yīng)地,本發(fā)明還提供一種基于虛擬視頻流的流媒體服務(wù)器測(cè)試系統(tǒng),包括:
獲取模塊,用于將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器;
運(yùn)行模塊,用于在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容;以及
記錄模塊,用于記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。
優(yōu)選地,所述運(yùn)行模塊包括:
進(jìn)程創(chuàng)建單元,用于利用所述測(cè)試腳本創(chuàng)建多個(gè)進(jìn)程以模擬所述多個(gè)客戶端發(fā)送多個(gè)點(diǎn)播請(qǐng)求至所述待測(cè)流媒體服務(wù)器;
網(wǎng)絡(luò)帶寬計(jì)算單元,用于根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求計(jì)算需要的網(wǎng)絡(luò)帶寬;以及
節(jié)目推送單元,用于根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求和所述網(wǎng)絡(luò)帶寬推送對(duì)應(yīng)的所述媒體內(nèi)容。
優(yōu)選地,還包括:
檢查模塊,用于檢查所述待測(cè)流媒體服務(wù)器的網(wǎng)絡(luò)環(huán)境狀態(tài)。
優(yōu)選地,還包括:
性能評(píng)估模塊,用于根據(jù)所述待測(cè)流媒體服務(wù)器的所述最大并發(fā)流數(shù)評(píng)估所述待測(cè)流媒體服務(wù)器的性能,生成測(cè)試報(bào)告。
實(shí)施本發(fā)明實(shí)施例,具有如下有益效果:本發(fā)明提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法和系統(tǒng),通過(guò)將測(cè)試腳本和媒體內(nèi)容導(dǎo)入到待測(cè)流媒體服務(wù)器上,在待測(cè)流媒體服務(wù)器上運(yùn)行該測(cè)試腳本來(lái)模擬多個(gè)客戶端同時(shí)點(diǎn)播該媒體內(nèi)容,以此來(lái)記錄待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù);本發(fā)明提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法和系統(tǒng)具有很高的并發(fā)性能,可以支持5000以上個(gè)并發(fā),比業(yè)界的平均值3000高出40個(gè)百分點(diǎn)。
附圖說(shuō)明
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明第一實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法的流程圖。
圖2為本發(fā)明第二實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法的流程圖。
圖3為本發(fā)明第三實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法的流程圖。
圖4為本發(fā)明第四實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試系統(tǒng)的原理圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
實(shí)施例一
圖1為本發(fā)明第一實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法的流程圖。如圖1所示,基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法法包括以下步驟:
步驟S110:將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器。
具體地,在本發(fā)明一實(shí)施例中,所述測(cè)試腳本由編程人員預(yù)先編輯,腳本的編程實(shí)現(xiàn)可以為匯編語(yǔ)言、C語(yǔ)言等以達(dá)到程序的高速運(yùn)行。當(dāng)準(zhǔn)備進(jìn)行流媒體服務(wù)器性能測(cè)試時(shí),將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器。
例如,通過(guò)以下步驟將媒體內(nèi)容導(dǎo)入到待測(cè)的流媒體服務(wù)器:
1.登錄待測(cè)的流媒體服務(wù)器。
2.打開一個(gè)命令窗口。
3.導(dǎo)入媒體內(nèi)容到服務(wù)器上,在命令行“C:\videos>”下執(zhí)行以下命令:
scp import v375d0_0001.mpg*scp import WildWildWest-60min.mpg
flm_v375d0_0001.mpg scp import WildWildWest-60min.mpg.ff
flm_v375d0_0001.mpg.ff scp import WildWildWest-60min.mpg.fr
flm_v375d0_0001.mpg.fr scp import WildWildWest-60min.mpg.vvx
flm_v375d0_0001.mpg.vvx scp import WildWildWest-15min.mpg
hdsd_d0_0001.mpg scp import WildWildWest-15min.mpg.ff hdsd_d0_0001.mpg.ff
scp import WildWildWest-15min.mpg.fr hdsd_d0_0001.mpg.fr scp import
WildWildWest-15min.mpg.vvx hdsd_d0_0001.mpg.vvx scp import
v375d0_0001.mpg hdsd_d0_0002.mpg scp import v375d0_0001.mpg.ff
hdsd_d0_0002.mpg.ff scp import v375d0_0001.mpg.fr hdsd_d0_0002.mpg.fr scp
import v375d0_0001.mpg.vvx hdsd_d0_0002.mpg.vvx scp import
TENM0000000000014900XOR*scp export v375d0_0001.mpg c:\temp\test0000.dat
步驟S120:在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容。
具體地,在本發(fā)明一實(shí)施例中,開始運(yùn)行測(cè)試腳本后,首先創(chuàng)建多個(gè)進(jìn)程以模擬所述多個(gè)客戶端發(fā)送多個(gè)點(diǎn)播請(qǐng)求至所述待測(cè)流媒體服務(wù)器;之后,根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求計(jì)算需要的網(wǎng)絡(luò)帶寬;最后,根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求和所述網(wǎng)絡(luò)帶寬推送對(duì)應(yīng)的所述媒體內(nèi)容。
進(jìn)一步地,本發(fā)明提供的測(cè)試系統(tǒng)在接收到點(diǎn)播請(qǐng)求時(shí),會(huì)將點(diǎn)播請(qǐng)求傳遞到后端服務(wù)器腳本處理程序,后端服務(wù)器腳本處理程序會(huì)根據(jù)數(shù)據(jù)需求自動(dòng)計(jì)算帶寬等參數(shù),然后根據(jù)請(qǐng)求把對(duì)應(yīng)的節(jié)目推出去。
步驟S130:記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。
具體地,最大并發(fā)流數(shù)是指流媒體服務(wù)器能夠支持的、有效的、能夠同時(shí)在線正常觀看節(jié)目的最大用戶數(shù)。在本發(fā)明一實(shí)施例中,通過(guò)監(jiān)控發(fā)送點(diǎn)播請(qǐng)求的多個(gè)進(jìn)程,記錄能夠流暢觀看所述媒體內(nèi)容的客戶端的數(shù)量,以推算所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。其中,本實(shí)施例中的每個(gè)推流進(jìn)程可同時(shí)支持5000個(gè)并發(fā)模擬,即可同時(shí)模擬5000個(gè)客戶端進(jìn)行流媒體服務(wù)器的推流測(cè)試。
本實(shí)施例的技術(shù)方案,通過(guò)將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器來(lái)創(chuàng)建進(jìn)程以模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容,完成了流媒體服務(wù)器的性能測(cè)試,解決現(xiàn)有技術(shù)中需要進(jìn)行人工測(cè)試帶來(lái)的人力成本高和效率低的問(wèn)題,或者是自動(dòng)化測(cè)試中無(wú)法支持龐大的數(shù)據(jù)流推送的問(wèn)題,使得流媒體服務(wù)器測(cè)試更加簡(jiǎn)便、高效,節(jié)省了大量時(shí)間、人力成本。
實(shí)施例二
圖2為本發(fā)明第二實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法的流程圖。如圖2所示,基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法法包括以下步驟:
步驟S210:檢查所述待測(cè)流媒體服務(wù)器的網(wǎng)絡(luò)環(huán)境狀態(tài)。
具體地,在本發(fā)明一實(shí)施例中,首先,運(yùn)行以下命令檢查服務(wù)器狀態(tài):
scp show cluster status
下面是部分返回結(jié)果示例:
C:\VstrmKit>scp show clu stat Cluster Status Local Node Name XOR12006 Local Cluster Node Id 0 Cluster Size 1 Cluster Id 12006 Master Cluster Node Id 0 Master Node State GREEN Master Node File System State REBUILT Cluster Uptime 0000 Days 00:28:55 Vstrm I/O Size 256KB Vstrm I/O Tick Count 1756746 XOR12006 is running a consistency check Cluster Adjacency Database:XOR12006 is Node Id=0,Node State=GREEN,File System State=REBUILT
之后對(duì)連流媒體服務(wù)器的網(wǎng)口。
步驟S220:將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器。
步驟S230:在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容。
步驟S240:記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。
本實(shí)施例的技術(shù)方案,通過(guò)檢查待測(cè)流媒體服務(wù)器的網(wǎng)絡(luò)環(huán)境狀態(tài),保證后續(xù)測(cè)試準(zhǔn)確進(jìn)行。
實(shí)施例三
圖3為本發(fā)明第三實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法的流程圖。如圖3所示,基于虛擬視頻流的流媒體服務(wù)器測(cè)試方法法包括以下步驟:
步驟S310:將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器。
步驟S320:在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容。
步驟S330:記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。
步驟S340:根據(jù)所述待測(cè)流媒體服務(wù)器的所述最大并發(fā)流數(shù)評(píng)估所述待測(cè)流媒體服務(wù)器的性能,生成測(cè)試報(bào)告。
進(jìn)一步地,在測(cè)試結(jié)束后,生成測(cè)試報(bào)告,可以在C:\servicedisk\LogFiles\目錄下找到這些txt文件格式的測(cè)試報(bào)告。檢查測(cè)試報(bào)告,查看是否有任何設(shè)備錯(cuò)誤,例如,閃存驅(qū)動(dòng)器、問(wèn)題,同時(shí),你可以檢查SeaView里的SeaFile counters(通過(guò)訪問(wèn)“Vstrm Info>Seafile Ctrs”),查看任何閃存驅(qū)動(dòng)器讀寫操作過(guò)慢問(wèn)題(超過(guò)200毫秒)。
本實(shí)施例的技術(shù)方案,通過(guò)流媒體服務(wù)器的能承載的最大并發(fā)流數(shù)來(lái)評(píng)估待測(cè)流媒體服務(wù)器的性能,為后續(xù)流媒體服務(wù)器的改進(jìn)提供精確的數(shù)據(jù)支持。
實(shí)施例四
圖4為本發(fā)明第四實(shí)施例提供的基于虛擬視頻流的流媒體服務(wù)器測(cè)試系統(tǒng)的原理圖。如圖4所示,基于虛擬視頻流的流媒體服務(wù)器測(cè)試系統(tǒng)包括:
獲取模塊410,用于將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器;
運(yùn)行模塊420,用于在所述待測(cè)流媒體服務(wù)器上運(yùn)行所述測(cè)試腳本,模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容;以及
記錄模塊430,用于記錄所述待測(cè)流媒體服務(wù)器的最大并發(fā)流數(shù)。
檢查模塊440,用于檢查所述待測(cè)流媒體服務(wù)器的網(wǎng)絡(luò)環(huán)境狀態(tài)。
性能評(píng)估模塊450,用于根據(jù)所述待測(cè)流媒體服務(wù)器的所述最大并發(fā)流數(shù)評(píng)估所述待測(cè)流媒體服務(wù)器的性能,生成測(cè)試報(bào)告。
進(jìn)一步地,所述運(yùn)行模塊420包括:
進(jìn)程創(chuàng)建單元,用于利用所述測(cè)試腳本創(chuàng)建多個(gè)進(jìn)程以模擬所述多個(gè)客戶端發(fā)送多個(gè)點(diǎn)播請(qǐng)求至所述待測(cè)流媒體服務(wù)器;
網(wǎng)絡(luò)帶寬計(jì)算單元,用于根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求計(jì)算需要的網(wǎng)絡(luò)帶寬;以及
節(jié)目推送單元,用于根據(jù)所述多個(gè)點(diǎn)播請(qǐng)求和所述網(wǎng)絡(luò)帶寬推送對(duì)應(yīng)的所述媒體內(nèi)容。
有利地,本發(fā)明通過(guò)將媒體內(nèi)容和測(cè)試腳本導(dǎo)入到待測(cè)流媒體服務(wù)器來(lái)創(chuàng)建進(jìn)程以模擬多個(gè)客戶端同時(shí)點(diǎn)播所述媒體內(nèi)容,完成了流媒體服務(wù)器的性能測(cè)試,解決現(xiàn)有技術(shù)中需要進(jìn)行人工測(cè)試帶來(lái)的人力成本高和效率低的問(wèn)題,或者是自動(dòng)化測(cè)試中無(wú)法支持龐大的數(shù)據(jù)流推送的問(wèn)題,使得流媒體服務(wù)器測(cè)試更加簡(jiǎn)便、高效,節(jié)省了大量時(shí)間、人力成本。
以上所揭露的僅為本發(fā)明一種較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分流程,并依本發(fā)明權(quán)利要求所作的等同變化,仍屬于發(fā)明所涵蓋的范圍。