使用JDK自帶的VisualVM進行Java程式的效能分析
VisualVM是什麼?
VisualVM是JDK自帶的一個用於Java程式效能分析的工具,JDK安裝完畢後就有啦,在JDK安裝目錄的bin資料夾下能找到名稱為jvisualvm.exe。
要使用VisualVM分析您的應用效能,首先得讓VisualVM識別出您的應用。Eclipse有個外掛名叫“VisualVM Launcher for Eclipse”,可以幫助我們做到這一點。
Eclipse VisualVM Launcher的安裝和配置
1. 從下面的連結下載VisualVM Launcher外掛。下載完畢後,放到您本地Eclipse資料夾的plugins資料夾下。
你可以參考下圖我本地的Eclipse資料夾。注意這個外掛解壓之後,應該有一個名叫site.xml的檔案。
2. 在Eclipse裡,選單 “Help->Install New Software”, 點 “Local”, 把第一步下載的外掛檔案載入進去。
Plugin檔案已經被成功識別出來,可以安裝了。
3. 安裝完畢,重啟Eclipse,能在Eclipse的option裡能看到一個新的關於VisualVM的介面了。我們需要告訴Eclipse我們JDK自帶的VisualVM的可執行檔案具體路徑。這裡根據JDK的路徑指定即可。
注意JDK home可別錯誤指定成JRE的路徑了,否則Eclipse也會貼心地彈出錯誤提示:Error Starting VisualVM:You are running VisualVM using Java Runtime Environment(JRE)。
使用VisualVM進行效能測試
右鍵單擊您的Java專案,從右鍵選單裡選擇“Run as”->”Run configuration”, 建立一個新的應用程式啟動配置。
因為前面我們已經成功安裝了Eclipse VisualVM Launcher,所以此時發現除了Eclipse自帶的Eclipse JDT launcher之外,多了一個VisualVM Launch的選項。
2. 假設我自己實現了一個快速排序演算法,我想測一測它的效能。
首先我在下圖程式碼第57行執行我的快速排序演算法之處設定一個斷點。
然後使用前一步建立的基於Eclipse VisualVM Launcher的應用程式啟動配置,以除錯模式啟動我的Java應用。
斷點觸發,這樣VisualVM就成功識別到了我的Java應用。點選Profiler標籤頁:
當前狀態: profiling inactive.
點選CPU按鈕:
現在Profile處於啟用狀態了。
3. 回到Eclipse,按F8結束應用程式的執行。應用程式一旦結束,VisualVM會立即撲捉到這個事件,並彈出一個視窗通知我們:
點Yes,就可以查閱VisualVM為我們產生的效能評測分析報告了。
要獲取更多Jerry的原創技術文章,請關注公眾號”汪子熙”或者掃描下面二維碼: