日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

VisualVM——JDK自带的性能分析工具

發布時間:2025/3/21 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VisualVM——JDK自带的性能分析工具 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

引子

這段時間項目新版本要發了,所以跟著QA分析性能測試和壓力測試,用了平時不怎么用的很多工具:

  • jmap
    jmap -heap pid → 查看堆的使用狀況信息?
    jmap -histo:live pid | less → 堆中活動的對象以及大小?
    jmap -dump:format=b,file=eclipse_heap.bin pid → Dump堆信息
  • jstat,可以查看很多內容 jstat -gcutil -h 20 pid 1000 100 → 查看Java進程GC的情況,1000ms統計一次gc情況統計100次
    jstack,查看jvm線程運行狀態,是否有死鎖現象等等信息?
    jstack pid → Dump線程信息
  • jinfo,查看jvm配置信息
  • jps
  • jconsole,圖形界面。可以持續收集內存、線程信息,并以曲線的方式顯示出來。?
    # 這個工具真正要做的功能是查看JMX Bean的信息,性能分析中并不關心JMX信息。
  • mat?:idea: ,分析內存Dump,查找內存泄漏。http://www.eclipse.org/mat/
  • JProfiler,商業 Profile工具。查看內存、CPU的使用,強勁

VisualVM在JDK1.6 Update7之后的版本中推出,就放在bin目錄下面。

VisualVM在的官方網站在?https://visualvm.dev.java.net?。JDK1.6 Update7之前的版本可以單獨下載使用。

VisualVM使用簡單,幾乎0配置,功能還是比較豐富的,幾乎囊括了其它JDK自帶命令的所有功能。

  • 內存信息
  • 線程信息
  • Dump堆(本地進程)
  • Dump線程(本地進程)
  • 打開堆Dump。堆Dump可以用jmap來生成。
  • 打開線程Dump
  • 生成應用快照(包含內存信息、線程信息等等)
  • 性能分析。 :idea: CPU分析(各個方法調用時間),內存分析(各類對象占用的內存)
  • ……

PS:

跟著QA做性能測試和壓力測試,很多收獲和感觸。

  • 雖然有UI工具,尤其是商業的工具如JProfiler,功能異常強大,但是命令行工具還是非常有市場的。
    • 線上出問題時,命令行能方便和快速的Dump出Heap信息線程信息,然后再對Dump分析;或是JVM信息,如GC次數、JVM參數。命令行對目標的產生的壓力小,UI工具可能無法連上。
    • JDK自帶命令行是環境標配的,你總是可以使用。UI可能要安裝,等裝好,菜都涼了。
  • 往往是對工具的不了解才不能解決問題,JDK自帶的工具已經可以解決很多問題了。強大的商業工具往往只是增加學習難度。
  • 只有測試得出的結果才是可信的,之前的推測往往不可靠的。
  • 系統地收集和保證數據,這樣當發現問題時,就有更可以用作判斷的信息。

參考資料

  • 好用的性能分析工具–VisualVM
  • 可與jprofiler/yourkit媲美的java診斷工具Visualvm
  • visualvm的官方網站:?https://visualvm.dev.java.net/download.html?一個Eclipse插件,啟動時附帶啟動visualvm來作性能分析:https://visualvm.dev.java.net/eclipse-launcher.html

from:?http://oldratlee.com/352/tech/java/jvisualvm.html

總結

以上是生活随笔為你收集整理的VisualVM——JDK自带的性能分析工具的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。