產(chǎn)品體驗中心 下載與支持 產(chǎn)品社區(qū) 合作代理 |  咨詢電話:400-035-7887/021-6072 5088
當(dāng)前位置:澤眾軟件測試網(wǎng)- 產(chǎn)品新聞 -正文

為什么性能測試工具performanceRunner壓力機的性能能夠增加5倍?

發(fā)布時間:2021-05-07

對于性能測試工具,它的性能腳本執(zhí)行效率,決定了在一個加壓的機器上,能夠運行多少個虛擬用戶(virtual user)。比如,執(zhí)行一個測試腳本的時間是100ms,相對于執(zhí)行相同的測試腳本時間為20ms,就相差了5倍。
 
在早期的performanceRunner(簡稱PR)版本,單臺壓力機的較大虛擬用戶大概在300-500左右。當(dāng)使用更高的虛擬用戶,會導(dǎo)致性能數(shù)據(jù)不準(zhǔn)確,無法達到較大壓力。
 
PR的較新版本,改進了測試腳本的核心算法,使得單個腳本的執(zhí)行時間大幅度縮減,這樣就可以執(zhí)行更多的VU。
 
我們知道,PR和JMeter都采用了beanshell作為腳本。根據(jù)各個腳本語言的性能對比測試(與python、js、java等),我們可以發(fā)現(xiàn),beanshell是性能較糟糕的腳本語言。因此,其實不是非常適合用來做高性能處理。具體的內(nèi)容,如果讀者有興趣可以去搜索網(wǎng)站上關(guān)于beanshell的相關(guān)文章。
 
那么,如果提升beanshell腳本的執(zhí)行效率,就是PR執(zhí)行器提升VU的核心問題。
通過研究我們發(fā)現(xiàn),beanshell的腳本執(zhí)行,具有2個步驟:第一,把腳本編譯成語法樹;第二,執(zhí)行語法樹上的語法元素。從編譯原理的角度來看,編譯的復(fù)雜度比執(zhí)行高很多,也就是說,beanshell的測試腳本執(zhí)行,大多數(shù)的時間用在編譯上。
對于性能測試而言,單個腳本基本是不改變的,但是它需要倍執(zhí)行上萬次,甚至百萬次。
如果我們能夠讓系統(tǒng)只執(zhí)行一次編譯,之后都只執(zhí)行語法樹,而不再編譯,是不是可以大幅度提升系統(tǒng)的性能?
 
按照以上的原來,我們在PR中,對測試腳本執(zhí)行進行了優(yōu)化,果然,性能得到大幅度提升,比原來快了5倍以上?。?!也就是執(zhí)行測試腳本的所消耗時間,縮短到不足原來的20%。
這樣,我們就使得加壓機上的較大VU格式,提升到能夠支持2000 VU(在十代i7上)。
帶來的好處是顯而易見的。比如,我們要執(zhí)行4萬VU的一次性能測試,原來較多只能執(zhí)行較大VU格式為200的設(shè)備的前提下,我們需要200臺設(shè)備,才能夠達到需要?,F(xiàn)在,在十代i7的設(shè)備下,我們可以只使用20臺設(shè)備,即可實現(xiàn)4萬VU的性能測試!
 
節(jié)省了大量的設(shè)備,同時也減少了軟件安裝部署、執(zhí)行監(jiān)控的時間。對于需要進行海量壓力加壓的客戶而言,價值非常高。
 
推薦閱讀:
 
 
 
 
 
本文內(nèi)容不用于商業(yè)目的,如涉及知識產(chǎn)權(quán)問題,請權(quán)利人聯(lián)系SPASVO小編(021-60725088-8054),我們將立即處理,馬上刪除。
滬ICP備07036474號 2003-2024 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd.
微信
咨詢

添加客服微信 歡迎咨詢測試工具和測試服務(wù)

微信客服
問題
反饋
產(chǎn)品
畫冊

掃描二維碼下載澤眾軟件企業(yè)宣傳冊

產(chǎn)品畫冊
返回
頂部

方案咨詢

×
提交信息

電話咨詢,400-035-7887,安排專業(yè)技術(shù)售前給您解答(產(chǎn)品試用、技術(shù)交流、服務(wù)咨詢和商務(wù)報價)。

您的信息已成功提交!

我們的客服人員稍后會與您聯(lián)系