您的位置:軟件測試 > 開源軟件測試 > 開源性能測試工具 > TPTP接口
使用 TPTP 對 Eclipse 插件進行性能剖析和調(diào)優(yōu)
作者:網(wǎng)絡轉(zhuǎn)載 發(fā)布時間:[ 2013/8/5 11:22:10 ] 推薦標簽:

進一步的性能調(diào)優(yōu)

如果你恰好足夠幸運遇到了一位非?量痰挠脩,對目前的性能水平還不夠滿意。那我們需要對現(xiàn)在的代碼進一步進行優(yōu)化以提高性能。

從新進行上面的步驟,首先以所有方法的執(zhí)行時間進行排序。之后按照耗時的順序從前往后進行分析。根據(jù)對前面幾個方法的分析,我們發(fā)現(xiàn),前面幾個方法耗時較多的原因也都是因為終調(diào)用了我們的 parseContent 方法。

按照上面的步驟,點擊該方法以分析其具體執(zhí)行狀況:

在該方法的 Selected method incokes 部分,我們可以看到,createParser 耗費了大部分的運行時間。我們可以從兩方面入手進行性能調(diào)優(yōu),一是改善該段代碼執(zhí)行邏輯以增強性能,例如我們的第一輪修改中,從 DOM 的分析模式改為 SAX 模式。另外是從代碼的調(diào)用次數(shù)上入手,減少性能不佳代碼的調(diào)用次數(shù)。例如在這里,通過進一步分析,具有性能瓶頸的方法用于產(chǎn)生用于 XML 分析的解析器,邏輯非常簡單,但卻被調(diào)用了 24 次。所以我們可以從減少次數(shù)的角度來增強性能。

分析代碼,我們可以創(chuàng)建一個 SAX 解析器的私有變量以在每次解析 XML 的過程中重用同一個解析器對象。以如下的方式修改代碼:

重用 SAX 解析器對象的代碼
    
private
SAXParser _saxParser;

 protected
SAXParser createParser() throws
ParserConfigurationException, SAXException
 {
    if
(_saxParser == null
)
 {
        SAXParserFactory f = SAXParserFactory.newInstance
();
        f.setValidating(false
);
 _saxParser = f.newSAXParser();
 }
    return
_saxParser;
 }

之后再次執(zhí)行分析過程,會發(fā)現(xiàn),parseContent 方法的執(zhí)行時間已經(jīng)被縮減到了 0.017s 左右。通過我們的性能分析可調(diào)優(yōu),一個完成同樣任務的方法,其執(zhí)行時間已經(jīng)從 0.5s 降低到了 0.017s,相信苛刻的客戶也可以接受這樣的結(jié)果了吧。

本文通過一個示例說明了在 Eclipse 插件開發(fā)過程中如何使用 TPTP 進行性能分析和調(diào)優(yōu)?梢钥吹,使用 TPTP 可以對程序運行時的各種數(shù)據(jù)進行直觀化、圖形化的分析。通過該工具的幫助,性能調(diào)優(yōu)以及程序運行時狀態(tài)的分析其實是一件非常容易的事情。

上一頁1234567下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd