一種流媒體服務(wù)器性能測(cè)試方法及測(cè)試系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及服務(wù)器負(fù)載測(cè)試領(lǐng)域,尤其涉及一種流媒體服務(wù)器性能測(cè)試方法及系統(tǒng)。
【背景技術(shù)】
[0002]流媒體指以流方式在網(wǎng)絡(luò)中傳送音頻、視頻和多媒體文件的媒體形式。由于流媒體技術(shù)的優(yōu)越性,該技術(shù)廣泛應(yīng)用于視頻點(diǎn)播、視頻會(huì)議、遠(yuǎn)程教育、遠(yuǎn)程醫(yī)療和在線直播系統(tǒng)中。作為新一代互聯(lián)網(wǎng)應(yīng)用的標(biāo)志,流媒體技術(shù)在近幾年得到了飛速的發(fā)展,而流媒體服務(wù)器又是流媒體應(yīng)用的核心系統(tǒng),是運(yùn)營(yíng)商向用戶提供視頻服務(wù)的關(guān)鍵平臺(tái)。其主要功能是對(duì)媒體內(nèi)容進(jìn)行采集、緩存、調(diào)度和傳輸播放,流媒體應(yīng)用系統(tǒng)的主要性能體現(xiàn)都取決于媒體服務(wù)器的性能和服務(wù)質(zhì)量。
[0003]現(xiàn)有技術(shù)中,針對(duì)流媒體服務(wù)器性能的測(cè)試采用人工測(cè)試的方法,使得測(cè)試成本較高,測(cè)試精度低,不便于測(cè)試數(shù)據(jù)的收集分析。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種流媒體服務(wù)器性能測(cè)試方法及測(cè)試系統(tǒng),以實(shí)現(xiàn)對(duì)流媒體服務(wù)器快速、準(zhǔn)確、高效的并發(fā)壓力測(cè)試,通過(guò)測(cè)試數(shù)據(jù)可判斷出服務(wù)器的承載能力,同時(shí)為服務(wù)器性能的進(jìn)一步改進(jìn)提供了有效數(shù)據(jù)。
[0005]第一方面,本發(fā)明實(shí)施例提供了一種流媒體服務(wù)器性能測(cè)試方法,包括:
[0006]測(cè)試端獲取自動(dòng)化測(cè)試腳本;
[0007]所述測(cè)試端運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息;
[0008]所述測(cè)試端記錄所述自動(dòng)化測(cè)試腳本模擬的客戶端數(shù)量及所述流媒體服務(wù)器的響應(yīng)時(shí)間。
[0009]在上述方案中,優(yōu)選的是,所述測(cè)試端運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息之前,還包括:
[0010]所述測(cè)試端在自動(dòng)化測(cè)試腳本中設(shè)定模擬的客戶端數(shù)量。
[0011 ] 在上述方案中,優(yōu)選的是,所述測(cè)試端運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息之前,還包括:
[0012]所述測(cè)試端在自動(dòng)化測(cè)試腳本中設(shè)定模擬的客戶端數(shù)量的變化范圍和對(duì)應(yīng)的變化時(shí)間間隔。
[0013]在上述方案中,優(yōu)選的是,在所述測(cè)試端記錄所述自動(dòng)化測(cè)試腳本模擬的客戶端數(shù)量及所述流媒體服務(wù)器的相應(yīng)時(shí)間之后,還包括:
[0014]根據(jù)所述響應(yīng)時(shí)間評(píng)估所述流媒體服務(wù)器的性能。
[0015]在上述方案中,優(yōu)選的是,所述自動(dòng)化測(cè)試腳本基于C語(yǔ)言庫(kù)編寫(xiě),運(yùn)行在所述測(cè)試端的Linux平臺(tái)中。
[0016]第二方面,本發(fā)明實(shí)施例提供了一種流媒體服務(wù)器性能測(cè)試系統(tǒng),包括:
[0017]腳本創(chuàng)建模塊,用于獲取自動(dòng)化測(cè)試腳本;
[0018]腳本運(yùn)行模塊,用于運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息;
[0019]記錄模塊,用于記錄所述自動(dòng)化測(cè)試腳本模擬的客戶端數(shù)量及所述流媒體服務(wù)器的響應(yīng)時(shí)間。
[0020]在上述方案中,優(yōu)選的是,還包括:
[0021]客戶端數(shù)量設(shè)定模塊,用于在運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息之前,在自動(dòng)化測(cè)試腳本中設(shè)定模擬的客戶端數(shù)量。
[0022]在上述方案中,優(yōu)選的是,還包括:
[0023]客戶端數(shù)量范圍設(shè)定模塊,用于在運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息之前,在自動(dòng)化測(cè)試腳本中設(shè)定模擬的客戶端數(shù)量的變化范圍和對(duì)應(yīng)的變化時(shí)間間隔。
[0024]在上述方案中,優(yōu)選的是,還包括:
[0025]性能評(píng)估模塊,用于在記錄所述自動(dòng)化測(cè)試腳本模擬的客戶端數(shù)量及所述流媒體服務(wù)器的相應(yīng)時(shí)間之后,根據(jù)所述響應(yīng)時(shí)間評(píng)估所述流媒體服務(wù)器的性能。
[0026]在上述方案中,優(yōu)選的是,所述自動(dòng)化測(cè)試腳本基于C語(yǔ)言庫(kù)編寫(xiě),運(yùn)行在所述測(cè)試端的Linux平臺(tái)中。
[0027]本發(fā)明通過(guò)在測(cè)試端獲取腳本創(chuàng)建進(jìn)程來(lái)模擬客戶端向流媒體服務(wù)器發(fā)送和獲取數(shù)據(jù),完成了流媒體服務(wù)器的性能測(cè)試,解決現(xiàn)有技術(shù)中需要進(jìn)行人工測(cè)試或需要在各個(gè)客戶端分別運(yùn)行腳本程序訪問(wèn)流媒體服務(wù)器進(jìn)行測(cè)試帶來(lái)的人力成本高,效率低及測(cè)試性能不精確的問(wèn)題,使得流媒體服務(wù)器測(cè)試更加簡(jiǎn)便、高效,節(jié)省了大量時(shí)間、人力成本。
【附圖說(shuō)明】
[0028]圖1是本發(fā)明實(shí)施例一中的流媒體服務(wù)器性能測(cè)試方法的流程圖;
[0029]圖2是本發(fā)明實(shí)施例二中的流媒體服務(wù)器性能測(cè)試方法的流程圖;
[0030]圖3是本發(fā)明實(shí)施例三中的流媒體服務(wù)器性能測(cè)試方法的流程圖;
[0031]圖4是本發(fā)明實(shí)施例四中的流媒體服務(wù)器性能測(cè)試方法的流程圖;
[0032]圖5是本發(fā)明實(shí)施例五中的流媒體服務(wù)器性能測(cè)試系統(tǒng)的系統(tǒng)框圖。
【具體實(shí)施方式】
[0033]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說(shuō)明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
[0034]實(shí)施例一
[0035]圖1為本發(fā)明實(shí)施例一提供的流媒體服務(wù)器性能測(cè)試方法的流程圖,本實(shí)施例可適用于流媒體服務(wù)器性能的測(cè)試,該方法可以由測(cè)試端設(shè)備(如PC機(jī))和流媒體服務(wù)器來(lái)執(zhí)行,具體包括如下步驟:
[0036]步驟110、測(cè)試端獲取自動(dòng)化測(cè)試腳本;
[0037]其中,所述自動(dòng)化測(cè)試腳本由編程人員預(yù)先編輯,編輯完畢后保存在測(cè)試端,腳本的編程實(shí)現(xiàn)可以為匯編語(yǔ)言、C語(yǔ)言等以達(dá)到程序的高速運(yùn)行。本實(shí)施例中腳本運(yùn)行在測(cè)試端的Linux平臺(tái),兼容性和穩(wěn)定性高。當(dāng)準(zhǔn)備進(jìn)行流媒體服務(wù)器性能測(cè)試時(shí),測(cè)試端開(kāi)始獲取所述存儲(chǔ)的腳本程序。
[0038]步驟120、所述測(cè)試端運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)送信息至所述流媒體服務(wù)器和/或讀取所述流媒體服務(wù)器中的信息;
[0039]其中,測(cè)試端開(kāi)始運(yùn)行測(cè)試腳本后,首先開(kāi)始創(chuàng)建進(jìn)程用以模擬客戶端發(fā)送信息至流媒體服務(wù)器,用于判斷流媒體服務(wù)器接收信息(即推流測(cè)試)的能力,其中測(cè)試參數(shù)包括了信息的傳輸速度,流媒體服務(wù)器的相應(yīng)時(shí)間,可同時(shí)推流的最大并發(fā)設(shè)備數(shù)等。本實(shí)施例中的每個(gè)推流進(jìn)程可同時(shí)支持200個(gè)并發(fā)模擬,即可同時(shí)模擬200個(gè)客戶端進(jìn)行流媒體服務(wù)器的推流測(cè)試,推流時(shí)多個(gè)模擬客戶端同時(shí)上傳所述測(cè)試端本地存儲(chǔ)的同一視頻文件至流媒體服務(wù)器端。同理,在進(jìn)程模擬客戶端讀取所述流媒體服務(wù)器中信息(即拉流測(cè)試)時(shí),多個(gè)模擬客戶端同一時(shí)間獲取流媒體服務(wù)器中的同一視頻文件,以此判斷流媒體服務(wù)器可同時(shí)響應(yīng)的客戶端的數(shù)量。本實(shí)施例中,每個(gè)拉流進(jìn)程可支持2K個(gè)客戶端的并發(fā)數(shù)據(jù)拉取。
[0040]步驟130、所述測(cè)試端記錄所述自動(dòng)化測(cè)試腳本模擬的客戶端數(shù)量及所述流媒體服務(wù)器的響應(yīng)時(shí)間;
[0041]其中,測(cè)試端針對(duì)運(yùn)行腳本時(shí)創(chuàng)建的每個(gè)進(jìn)程進(jìn)行實(shí)時(shí)監(jiān)控記錄,記錄創(chuàng)建的進(jìn)程數(shù)目及每個(gè)進(jìn)程模擬的客戶端數(shù)量,同時(shí)針對(duì)推流和拉流分別記錄但不限于流媒體服務(wù)器反饋的響應(yīng)時(shí)間、信息傳輸速率等衡量流媒體服務(wù)器性能的參數(shù)。
[0042]該流媒體服務(wù)器性能測(cè)試方法原理為:測(cè)試端進(jìn)程模擬多個(gè)客戶端同時(shí)發(fā)送數(shù)據(jù)和獲取流媒體服務(wù)器中的數(shù)據(jù),同時(shí)測(cè)試端記錄相應(yīng)流所述媒體服務(wù)器反饋信息的多個(gè)參數(shù)。
[0043]本實(shí)施例的技術(shù)方案,通過(guò)在測(cè)試端獲取腳本創(chuàng)建進(jìn)程來(lái)模擬客戶端向流媒體服務(wù)器發(fā)送和獲取數(shù)據(jù),完成了流媒體服務(wù)器的性能測(cè)試,解決現(xiàn)有技術(shù)中需要進(jìn)行人工測(cè)試或需要在各個(gè)客戶端分別運(yùn)行腳本程序訪問(wèn)流媒體服務(wù)器進(jìn)行測(cè)試帶來(lái)的人力成本高,效率低及測(cè)試性能不精確(腳本觸發(fā)時(shí)間不統(tǒng)一)的問(wèn)題,使得流媒體服務(wù)器測(cè)試更加簡(jiǎn)便、高效,節(jié)省了大量時(shí)間、人力成本。
[0044]實(shí)施例二
[0045]圖2為本發(fā)明實(shí)施例二提供的流媒體服務(wù)器性能測(cè)試方法的流程圖,本實(shí)施例在實(shí)施例一的基礎(chǔ)上,優(yōu)選的進(jìn)一步增加了步驟:所述測(cè)試端在自動(dòng)化測(cè)試腳本中設(shè)定模擬的客戶端數(shù)量。如圖2所示,
[0046]步驟210、測(cè)試端獲取自動(dòng)化測(cè)試腳本;
[0047]步驟220、所述測(cè)試端在自動(dòng)化測(cè)試腳本中設(shè)定模擬的客戶端數(shù)量;
[0048]其中,客戶端數(shù)量的設(shè)置方式通常采取命令行輸入的形式,測(cè)試人員根據(jù)需要判定的客戶端數(shù)據(jù)量進(jìn)行指定輸入模擬,如某直播節(jié)目晚8點(diǎn)時(shí)同時(shí)在線觀看人數(shù)為50萬(wàn),分配到單個(gè)流媒體服務(wù)器中的數(shù)據(jù)接入量為1萬(wàn),則此時(shí)可設(shè)置5個(gè)進(jìn)程,每個(gè)進(jìn)程并發(fā)執(zhí)行2K個(gè)的客戶端拉流測(cè)試。
[0049]步驟230、所述測(cè)試端運(yùn)行所述自動(dòng)化測(cè)試腳本,創(chuàng)建至少一個(gè)進(jìn)程以模擬至少一個(gè)客戶端發(fā)