性能測試之JProfiler9.2


一,下載Jprofiler安裝包,解壓

  jprofiler_linux_9_2.sh

  jprofiler_windows-x64_9_2.exe

二,安裝jprofile服務端

  1,把jprofiler_linux_9_2.sh 上傳到服務器/usr/local/jprofiler路徑下

  2,賦權限chmod 777 jprofiler_linux_9_2.sh再執行 sh jprofiler_linux_9_2.sh(根據提示一路回車)

  3,默認安裝在/opt/jprofiler7目錄下

三,先安裝windowns客戶端

  安裝完后破解:

  

  接着下一步就安裝完成了,打開出現這頁面

  

 四,linux和windowns都安裝完成以后,就可以配置tomcat了

  1,在tomcat的的bin目錄下有個catalina.sh文件,打開添加如下配置

  JAVA_OPTS="-Xms128m -Xmx512m -Xss256k -XX:PermSize=64m -XX:MaxPermSize=256m -agentpath:/opt/jprofiler9/bin/linux-x64/libjprofilerti.so=port=8849 -Xbootclasspath/a:/opt/jprofiler9/bin/agent.jar -d64"

  2,重啟啟動tomcat

  

  3,開始建立連接:第一步

  

  第二步:

  

 第三步:

  

  第四步:

  

  第五步:

  

   第六步:

  

  第七步:

  

   第八步:

  

   第九步:

  

  第十步:

  

   第十一步:

  

   連接成功,后台程序就繼續啟動了

  

  

 五,我們來對一個有內存溢出的程序進行監控

  我們這里主要看Live memory和CPU views

  我們首先來看Live memory

  

 

   在這里我們看到的是當前tomcat的對象使用情況,圖中顏色的線條表示當前對象被引用的次數和大小

  "Mark Current"---來將當前內存使用情況作為參照;點擊后會顯示“Difference”列,該列會列出對象數量的變化和變化比率

  

 

   接着我們操作應用程序看一下內存的增長情況

  

 

     我們可以看到該對象內存增長的幅度,達到了31%

    接着我們可以執行一下GC,看內存是否被釋放一部分出來

    

 

     我們發現該對象占用的內存並未釋放,可以確定有內存溢出,那么接下來我們具體定位一下

    我們選中這一條數據進行如下操作:右鍵選中第一條或者點擊上面的show in heap walker都可以

    

 

     出現下圖,我們來進行如此操作:

    

 

     

 

    會出現該對象的類,我們通過點擊+號就可以追蹤到引用該類對象的程序和文件,如圖:

     

 

      上圖中出現黃色的表示該引用消耗了內存,直接定位到index_jsp文件,說明該文件內部程序引起了內存溢出問題  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM