效能測試之JVM的故障分析工具VisualVM

老僧觀天下發表於2020-10-21

VisualVM 是隨JDK一同釋出的jvm診斷工具,通過外掛可以擴充套件很多功能,外掛擴充套件也是其精華所在。

提供了一個可視介面,用於在Java應用程式在Java虛擬機器上執行時檢視有關Java應用程式的詳細資訊。此資訊可用於對本地和遠端應用程式進行故障排除以及對本地應用程式進行效能分析。

使用Java VisualVM,可以生成和分析堆轉儲,跟蹤記憶體洩漏,執行和監視垃圾回收以及執行輕量級記憶體和CPU效能分析。該工具對於調整,堆大小,離線分析和事後診斷也很有用。

使用方法

  1. 啟動
cd <JDK_HOME>/bin
jvisualvm
  1. 選擇監控程式

當然監控支援遠端JMX監控和遠端主機監控

  1. 監控檢視:監控cpu、堆、類載入、執行緒數

  2. 執行緒監控:死鎖診斷等

  3. cpu和記憶體取樣分析:cpu執行緒佔用分析、記憶體佔用分析等

  4. GC監控外掛

外掛推薦

  • Visual GC

    將可視垃圾收集監視工具整合到VisualVM中。Visual GC附加到應用程式,並收集並以圖形方式顯示垃圾收集,類載入器和HotSpot編譯器效能數

  • VisualVM MBeans

    MBeans瀏覽器外掛提供的功能類似於JConsole中的MBeans瀏覽器:顯示應用程式的MBean,顯示值,操作和通知。在VisualVM中,瀏覽器得到了進一步的改進,以提供更好的可用性並支援最新的JMX功能

  • VisualVM Extensions

    該模組的目的是新增對在釋出VisualVM時VisualVM核心模組不支援的其他功能(例如新的JDK,JVM,HotSpot版本...)的支援

  • Tracer

    用於詳細監視和分析Java應用程式的框架和GUI。跟蹤器使用各種探針,從應用程式收集指標並在時間軸中顯示資料。資料以圖形方式和表格形式顯示,並可以匯出為通用格式,以供外部工具進行進一步處理

  • JConsole

    支援在VisualVM中使用現有的JConsole外掛(如JTop)

  • Threads Inspector

    執行緒檢查器在“執行緒”選項卡上新增了一個新部分,其中顯示了選定活動執行緒的堆疊跟蹤。

掃一掃,關注我

相關文章