這篇文章主要介紹了如何使用JDK自帶的VisualVM進(jìn)行Java程序的性能分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)建站專注于金口河網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供金口河營銷型網(wǎng)站建設(shè),金口河網(wǎng)站制作、金口河網(wǎng)頁設(shè)計(jì)、金口河網(wǎng)站官網(wǎng)定制、成都微信小程序服務(wù),打造金口河網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供金口河網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
VisualVM是JDK自帶的一個(gè)用于Java程序性能分析的工具,JDK安裝完畢后就有啦,在JDK安裝目錄的bin文件夾下能找到名稱為jvisualvm.exe。
要使用VisualVM分析您的應(yīng)用性能,首先得讓VisualVM識(shí)別出您的應(yīng)用。Eclipse有個(gè)插件名叫“VisualVM Launcher for Eclipse”,可以幫助我們做到這一點(diǎn)。
1. 從下面的鏈接下載VisualVM Launcher插件。下載完畢后,放到您本地Eclipse文件夾的plugins文件夾下。
http://visualvm.java.net/eclipse-launcher.html
你可以參考下圖我本地的Eclipse文件夾。注意這個(gè)插件解壓之后,應(yīng)該有一個(gè)名叫site.xml的文件。
2. 在Eclipse里,菜單 “Help->Install New Software”, 點(diǎn) “Local”, 把第一步下載的插件文件加載進(jìn)去。
Plugin文件已經(jīng)被成功識(shí)別出來,可以安裝了。
3. 安裝完畢,重啟Eclipse,能在Eclipse的option里能看到一個(gè)新的關(guān)于VisualVM的界面了。我們需要告訴Eclipse我們JDK自帶的VisualVM的可執(zhí)行文件具體路徑。這里根據(jù)JDK的路徑指定即可。
注意JDK home可別錯(cuò)誤指定成JRE的路徑了,否則Eclipse也會(huì)貼心地彈出錯(cuò)誤提示:Error Starting VisualVM:You are running VisualVM using Java Runtime Environment(JRE)。
右鍵單擊您的Java項(xiàng)目,從右鍵菜單里選擇“Run as”->”Run configuration”, 創(chuàng)建一個(gè)新的應(yīng)用程序啟動(dòng)配置。
因?yàn)榍懊嫖覀円呀?jīng)成功安裝了Eclipse VisualVM Launcher,所以此時(shí)發(fā)現(xiàn)除了Eclipse自帶的Eclipse JDT launcher之外,多了一個(gè)VisualVM Launch的選項(xiàng)。
2. 假設(shè)我自己實(shí)現(xiàn)了一個(gè)快速排序算法,我想測一測它的性能。
首先我在下圖代碼第57行執(zhí)行我的快速排序算法之處設(shè)置一個(gè)斷點(diǎn)。
然后使用前一步創(chuàng)建的基于Eclipse VisualVM Launcher的應(yīng)用程序啟動(dòng)配置,以調(diào)試模式啟動(dòng)我的Java應(yīng)用。
斷點(diǎn)觸發(fā),這樣VisualVM就成功識(shí)別到了我的Java應(yīng)用。點(diǎn)擊Profiler標(biāo)簽頁:
當(dāng)前狀態(tài): profiling inactive.
點(diǎn)擊CPU按鈕:
現(xiàn)在Profile處于激活狀態(tài)了。
3. 回到Eclipse,按F8結(jié)束應(yīng)用程序的執(zhí)行。應(yīng)用程序一旦結(jié)束,VisualVM會(huì)立即撲捉到這個(gè)事件,并彈出一個(gè)窗口通知我們:
點(diǎn)Yes,就可以查閱VisualVM為我們產(chǎn)生的性能評測分析報(bào)告了。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何使用JDK自帶的VisualVM進(jìn)行Java程序的性能分析”這篇文章對大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!