
比較上面兩個圖表可以發現,20_20_10_2時各時間點基本都平均分布在1.5秒之內,僅有極少數幾個點在1.5秒之外,且最大不超過4秒,由此可以認為對這些值取平均值的誤差是可以接受的。而30_20_10_2時在測試開始階段(800筆之前)和結束階段(4500筆之后)的時間點明顯高于中間階段的時間點,這應該是由于壓力大時在測試開始階段30個browser進程沒有很快把壓力壓向fcgi(壓力小時也有這種情況,但時間會小的多),這樣造成30個browser進程也不是在相近時間內結束,在結束階段只有少數browser進程仍沒有完成,這時的系統壓力變小,fcgi進程等待HTTP請求時間也變長。在30_20_10_2時這種非正常壓力時間段很長并且數據差距很大,這時取全部時間段內的數值的平均值必然帶來誤差。從上圖可以看到,應該取800筆到4500之間系統穩定時的數據作為有效數據。注意其他環節的進程的時間統計也需要按這一筆數范圍作為有效數據。經過修正后的全部數據見下表。數據基本正常。 10_10_5_2(ms)20_20_10_2(ms)30_20_10_2(ms)
TPC(筆/秒) 2.169672.285712.21911
browser 4609875013519
fcgireceive from fcgi343931954
tpcall409676148575
tpcommit176204202
total_fcgi461587499731
svr_ccreceive from TE4
16
18
service_before_tpcall134634014201
tpcall927927598
service_after_tpcall38
45
53
total_svr_cc2315
4389
4870
waiting&receive from TE289267555
service636
611
418
經驗:有時取平均值會有較大的誤差,尤其是測試不完全正常的情況。這時需要仔細分析原始數據,排除造成誤差的數據,以系統穩定(正常)時的數據作為有效數據。這里excel圖表功能是一個非常好用的工具。
文章來源于領測軟件測試網 http://www.kjueaiud.com/