一種檢測(cè)系統(tǒng)性能的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種檢測(cè)系統(tǒng)性能的方法及裝置。
【背景技術(shù)】
[0002]目前,系統(tǒng)在進(jìn)行穩(wěn)定性測(cè)試時(shí),一般采用基于傳輸控制協(xié)議(Transmiss1nControl Protocol,TCP)的請(qǐng)求復(fù)制工具(TCPcopy)技術(shù)。該技術(shù)通過(guò)在數(shù)據(jù)鏈層抓取請(qǐng)求數(shù)據(jù),將線上的請(qǐng)求數(shù)據(jù)引流到待測(cè)試的系統(tǒng)中,通過(guò)對(duì)比待測(cè)試的系統(tǒng)對(duì)于請(qǐng)求數(shù)據(jù)的處理結(jié)果與預(yù)期處理結(jié)果,得到待測(cè)試的系統(tǒng)的性能是否穩(wěn)定。
[0003]上述測(cè)試方法存在的問(wèn)題在于,無(wú)法根據(jù)測(cè)試需要,模擬待測(cè)試的系統(tǒng)可能會(huì)遇到的各種異常場(chǎng)景。即,該測(cè)試方法的適用性較差。此外,上述測(cè)試方法也沒(méi)有提供對(duì)于待測(cè)試的系統(tǒng)對(duì)應(yīng)的線上系統(tǒng)的性能評(píng)估機(jī)制。
[0004]需要說(shuō)明的是,待測(cè)試的系統(tǒng)與某個(gè)線上系統(tǒng)具備對(duì)應(yīng)關(guān)系,是指待測(cè)試的系統(tǒng)與該線上系統(tǒng)完全相同;或者,待測(cè)試的系統(tǒng)是在該線上系統(tǒng)的基礎(chǔ)上,對(duì)該線上系統(tǒng)的功能進(jìn)行了增加、刪除或修改的系統(tǒng)。
【發(fā)明內(nèi)容】
[0005]本申請(qǐng)實(shí)施例提供一種檢測(cè)系統(tǒng)性能的方法,用于解決現(xiàn)有的測(cè)試方法適用性較差,且不能提供線上系統(tǒng)的性能評(píng)估機(jī)制的問(wèn)題。
[0006]本申請(qǐng)實(shí)施例還提供一種檢測(cè)系統(tǒng)性能的裝置,用于解決現(xiàn)有的測(cè)試方法適用性較差,且不能提供線上系統(tǒng)的性能評(píng)估機(jī)制的問(wèn)題。
[0007]本申請(qǐng)實(shí)施例采用下述技術(shù)方案:
[0008]一種檢測(cè)系統(tǒng)性能的方法,包括:
[0009]獲取請(qǐng)求數(shù)據(jù)以及模擬類型;確定與所述模擬類型匹配的模擬對(duì)象,并對(duì)所述模擬對(duì)象進(jìn)行模擬處理;其中,所述模擬對(duì)象為所述請(qǐng)求數(shù)據(jù)和/或待測(cè)試的系統(tǒng);根據(jù)模擬處理后的模擬對(duì)象,得到第一處理結(jié)果;根據(jù)第一處理結(jié)果,得出和待測(cè)試的系統(tǒng)對(duì)應(yīng)的線上系統(tǒng)的性能是否穩(wěn)定。
[0010]一種檢測(cè)系統(tǒng)性能的裝置,包括:
[0011]請(qǐng)求數(shù)據(jù)引流單元,請(qǐng)求數(shù)據(jù)引流單元將線上系統(tǒng)接收到的請(qǐng)求數(shù)據(jù)復(fù)制并引流到待測(cè)試的系統(tǒng)中;模擬單元,用于對(duì)模擬對(duì)象進(jìn)行模擬處理,根據(jù)模擬處理后的模擬對(duì)象,得到第一處理結(jié)果;數(shù)據(jù)對(duì)比分析單元,用于根據(jù)第一處理結(jié)果,得出和待測(cè)試的系統(tǒng)對(duì)應(yīng)的線上系統(tǒng)的性能是否穩(wěn)定。
[0012]本申請(qǐng)實(shí)施例采用的上述至少一個(gè)技術(shù)方案能夠達(dá)到以下有益效果:
[0013]由于運(yùn)用模擬處理,可以在待測(cè)試的系統(tǒng)中模擬制造各種可能出現(xiàn)的場(chǎng)景,同時(shí)對(duì)根據(jù)得到的處理結(jié)果進(jìn)行實(shí)時(shí)對(duì)比分析跟統(tǒng)計(jì),解決現(xiàn)有的測(cè)試方法適用性較差,且不能提供線上系統(tǒng)的性能評(píng)估機(jī)制的問(wèn)題。
【附圖說(shuō)明】
[0014]此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
[0015]圖1為本申請(qǐng)實(shí)施例提供的一種檢測(cè)系統(tǒng)性能的方法的具體實(shí)現(xiàn)流程示意圖;
[0016]圖2為本申請(qǐng)實(shí)施例提供的一種檢測(cè)系統(tǒng)性能的裝置的具體結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0017]為使本申請(qǐng)的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)具體實(shí)施例及相應(yīng)的附圖對(duì)本申請(qǐng)技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實(shí)施例僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。
[0018]以下結(jié)合附圖,詳細(xì)說(shuō)明本申請(qǐng)各實(shí)施例提供的技術(shù)方案。
[0019]實(shí)施例1
[0020]本實(shí)施例提供一種檢測(cè)系統(tǒng)性能的方法,解決現(xiàn)有的測(cè)試方法適用性較差,且不能提供線上系統(tǒng)的性能評(píng)估機(jī)制的問(wèn)題。該方法的具體實(shí)現(xiàn)流程示意圖如圖1所示,主要包括下述步驟:
[0021 ] 步驟11,獲取請(qǐng)求數(shù)據(jù)以及模擬類型;
[0022]比如,獲取的請(qǐng)求數(shù)據(jù),可以是由請(qǐng)求工具提供的。具體地,請(qǐng)求復(fù)制工具可以對(duì)待測(cè)試的系統(tǒng)對(duì)應(yīng)的線上系統(tǒng)收到的請(qǐng)求數(shù)據(jù)完全復(fù)制,進(jìn)而提供復(fù)制得到的請(qǐng)求數(shù)據(jù)。
[0023]該請(qǐng)求復(fù)制工具包括但不僅限于TCPcopy工具。在一種實(shí)施方式中,TCPcopy工具可以在數(shù)據(jù)鏈層對(duì)請(qǐng)求數(shù)據(jù)包進(jìn)行復(fù)制并提供復(fù)制得到的請(qǐng)求數(shù)據(jù)包。
[0024]本申請(qǐng)實(shí)施例中,請(qǐng)求數(shù)據(jù),可以但不限于為訪問(wèn)請(qǐng)求包含的數(shù)據(jù)、交易請(qǐng)求包含的數(shù)據(jù)以及其他消息中包含的數(shù)據(jù),等。
[0025]本申請(qǐng)實(shí)施例中,模擬類型用于表示需要進(jìn)行模擬處理的具體模擬對(duì)象,不同的模擬類型可以匹不同的模擬對(duì)象。比如,模擬類型可以分為“數(shù)據(jù)模擬”和“系統(tǒng)模擬”兩種。其中,“數(shù)據(jù)模擬”表示需要進(jìn)行模擬處理的模擬對(duì)象為請(qǐng)求數(shù)據(jù),即“數(shù)據(jù)模擬”與“請(qǐng)求數(shù)據(jù)”相匹配;而“系統(tǒng)模擬”表示需要進(jìn)行模擬處理的模擬對(duì)象為待測(cè)試的系統(tǒng),即“系統(tǒng)模擬”與“待測(cè)試的系統(tǒng)”相匹配。
[0026]本申請(qǐng)實(shí)施例中,模擬類型可以是設(shè)置的默認(rèn)信息,也可以是由用戶根據(jù)自身需要而輸入的。
[0027]需要說(shuō)明的是,步驟11中所述的請(qǐng)求數(shù)據(jù),可以是實(shí)時(shí)抓取到的,也可以是歷史請(qǐng)求數(shù)據(jù)。針對(duì)歷史請(qǐng)求數(shù)據(jù)的獲取方式而言,可以通過(guò)請(qǐng)求復(fù)制工具對(duì)某個(gè)歷史時(shí)間段的請(qǐng)求數(shù)據(jù)進(jìn)行復(fù)制并提供。
[0028]例如,以微博系統(tǒng)為例,春節(jié)期間微博系統(tǒng)接收到大量的紅包請(qǐng)求(發(fā)紅包請(qǐng)求或搶紅包請(qǐng)求等)。為了保證在春節(jié)期間,微博系統(tǒng)能穩(wěn)定運(yùn)行,通過(guò)請(qǐng)求復(fù)制工具對(duì)該系統(tǒng)去年春節(jié)期間收到的紅包請(qǐng)求數(shù)據(jù)進(jìn)行復(fù)制,并導(dǎo)入到線下的待測(cè)試的系統(tǒng)中處理,以模擬微博系統(tǒng)在今年春節(jié)期間運(yùn)行是否穩(wěn)定。
[0029]步驟12,對(duì)與模擬類型匹配的模擬對(duì)象進(jìn)行模擬處理,根據(jù)處理后的模擬對(duì)象,得到處理結(jié)果;
[0030]其中,當(dāng)模擬對(duì)象為請(qǐng)求數(shù)據(jù)時(shí),相應(yīng)的處理結(jié)果為待測(cè)試的系統(tǒng)對(duì)于模擬處理后的請(qǐng)求數(shù)據(jù)的處理結(jié)果;當(dāng)模擬對(duì)象為待測(cè)試的系統(tǒng)時(shí),相應(yīng)的處理結(jié)果為模擬處理后的待測(cè)試的系統(tǒng)對(duì)于步驟11中獲取到的請(qǐng)求數(shù)據(jù)的處理結(jié)果。
[0031]當(dāng)模擬對(duì)象為請(qǐng)求數(shù)據(jù)時(shí),在一種實(shí)施方式中,對(duì)請(qǐng)求數(shù)據(jù)的模擬處理包括:采用加鹽技術(shù),對(duì)請(qǐng)求數(shù)據(jù)進(jìn)行模擬處理,以使得請(qǐng)求數(shù)據(jù)出現(xiàn)亂序,錯(cuò)誤,流量放大,延遲發(fā)送等異常情況中的至少一種。
[0032]具體采用的加鹽技術(shù),可以但不限于是對(duì)請(qǐng)求數(shù)據(jù)進(jìn)行二進(jìn)制代碼注入。
[0033]比如,以移動(dòng)支付平臺(tái)為例,當(dāng)要模擬平臺(tái)接收大量交易請(qǐng)求數(shù)據(jù)進(jìn)而導(dǎo)致流量擁堵的異常情況時(shí),可以對(duì)獲取的請(qǐng)求數(shù)據(jù)進(jìn)行二進(jìn)制代碼注入,從而對(duì)請(qǐng)求數(shù)據(jù)流量進(jìn)行放大,達(dá)到模擬目的。
[0034]當(dāng)模擬對(duì)象為待測(cè)試的系統(tǒng)時(shí),在一種實(shí)施方式中,對(duì)待測(cè)試的系統(tǒng)的模擬處理包括以下四種方式:
[0035]方式一:通過(guò)加鹽技術(shù),在待測(cè)試的系統(tǒng)中的某個(gè)或幾個(gè)子功能模塊中去除對(duì)應(yīng)于該功能模塊的功能代碼,模擬待測(cè)試的系統(tǒng)出現(xiàn)的模塊刪減和功能缺失的情況。例如以檢驗(yàn)在線觀看視頻的系統(tǒng)上刪除動(dòng)漫模塊后是否會(huì)影響系統(tǒng)的性能為例,可以通過(guò)加鹽技術(shù),在待測(cè)試的系統(tǒng)上將需要?jiǎng)h除的動(dòng)漫模塊對(duì)應(yīng)的功能代碼刪除,從而達(dá)到在待測(cè)試的系統(tǒng)上模擬刪除動(dòng)漫模塊的情況;
[0036]方式二:通過(guò)加鹽技術(shù),在待