歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> VisualVM 入門指南

VisualVM 入門指南

日期:2017/2/28 15:53:33   编辑:Linux教程

VisualVM 提供在 Java 虛擬機 (Java Virutal Machine, JVM) 上運行的 Java 應用程序的詳細信息。在 VisualVM 的圖形用戶界面中,您可以方便、快捷地查看多個 Java 應用程序的相關信息。

本入門指南應當對您快速設置並運行 VisualVM 有所幫助。本指南將演示如何安裝 VisualVM,以及如何通過安裝 VisualVM 更新中心提供的插件向該工具添加功能。本指南還將介紹如何啟動 VisualVM,以及如何查看可以獲取的一些有關本地和遠程 JVM 上運行的應用程序的信息。


VisualVM 實踐

以下簡短的截屏視頻顯示了最初在 java.sun.com 中介紹的 VisualVM 功能:


安裝 VisualVM

  1. 從 VisualVM 項目頁下載 VisualVM 安裝程序。
  2. 將 VisualVM 安裝程序解壓縮到本地系統。
  3. 導航至 VisualVM 安裝目錄的 bin 目錄,然後啟動應用程序。

使用“應用程序”窗口

在啟動應用程序後,將打開 VisualVM 的主窗口。缺省情況下,“應用程序”窗口顯示在主窗口的左窗格中。在“應用程序”窗口中,可以快速查看本地和遠程 JVM 上運行的 Java 應用程序。

“應用程序”窗口是查看特定應用程序詳細信息的主入口點。右鍵單擊應用程序節點將打開彈出式菜單,從該彈出式菜單中可以選擇是打開主應用程序標簽,還是生成線程 dump 或堆 dump。

有關如何使用“應用程序”窗口查看和保存應用程序相關數據的更多詳細信息,請參見以下頁面:

  • Using the Applications Window(使用“應用程序”窗口)

浏覽堆 Dump

VisualVM 有一個可視化窗口,通過該窗口可以輕松浏覽堆 dump。您可以裝入現有堆 dump,或為本地運行的應用程序生成堆快照。

要生成本地應用程序的堆 dump,可以執行下列任一操作:

  • 在“應用程序”窗口中右鍵單擊應用程序節點,然後選擇“堆 Dump”。
  • 在“應用程序”窗口中雙擊應用程序節點以打開應用程序標簽,然後在“監視”標簽中單擊“堆 Dump”。

要打開保存的堆 dump,請從主菜單中選擇“文件”>“裝入”,然後找到保存的堆 dump。

浏覽打開的堆 dump:

  1. 單擊“堆 Dump”工具欄中的“類”,以查看活動類和對應實例的列表。
  2. 雙擊某個類名打開“實例”視圖,以查看實例列表。
  3. 從列表中選擇某個實例,以查看對該實例的引用。

在生成堆 dump 後,VisualVM 將在新標簽中打開該堆 dump,並在“應用程序”窗口中的應用程序節點下為該堆 dump 創建一個節點。要保存生成的堆 dump,請右鍵單擊該堆 dump 節點,然後選擇“另存為”。如果沒有明確保存生成的堆 dump,則在應用程序關閉時將刪除該 dump。

有關更多信息,請參見以下文檔:

  • Browsing a Heap Dump(浏覽堆 Dump)

對應用程序進行性能分析

VisualVM 包括一個 Profiler,可以使用它對本地 JVM 上運行的應用程序進行性能分析。您可以在應用程序標簽的 "Profiler" 標簽中訪問性能分析控件。通過該 Profiler,可以分析本地應用程序的內存使用情況和 CPU 性能。
注意:要對 JDK 6 上運行的應用程序進行性能分析,需要關閉該應用程序的類共享,否則該應用程序可能會崩潰。要關閉類共享,請使用 -Xshare:off 參數啟動應用程序。

  1. 啟動本地 Java 應用程序。(使用 -Xshare:off 參數啟動該應用程序。)
  2. 在“應用程序”窗口的“本地”節點下,右鍵單擊該應用程序節點,然後選擇“打開”以打開該應用程序標簽。
  3. 在該應用程序標簽中單擊 "Profiler" 標簽。
  4. 在 "Profiler" 標簽中單擊“內存”或 "CPU"。

    在選擇性能分析任務後,VisualVM 將在 "Profiler" 標簽中顯示性能分析數據。

有關使用 VisualVM 進行性能分析的更多信息,請參見以下文檔:

  • 對應用程序進行性能分析

連接到遠程主機

通過 VisualVM,可以輕松監視遠程主機上運行的應用程序,並查看有關遠程系統的常規數據。要查看遠程主機上應用程序的相關信息,必須首先連接到遠程主機。已連接的遠程主機將列在“應用程序”窗口的“遠程”節點下。展開遠程主機節點可查看遠程主機上運行的應用程序。

要從遠程應用程序中檢索數據,需要在遠程 JVM 上運行 jstatd 實用程序。有關如何啟動 jstatd 的更多信息 請參見 jstatd - Virtual Machine jstat Daemon(jstatd - 虛擬機 jstat 守護進程)。無法對遠程主機上運行的應用程序進行性能分析。

  1. 右鍵單擊“應用程序”窗口中的“遠程”節點,然後選擇“添加遠程主機”。
  2. 在“添加遠程主機”對話框中,鍵入遠程計算機的主機名或 IP 地址。
  3. (可選)鍵入遠程主機的顯示名稱。此名稱將顯示在“應用程序”窗口中。如果沒有輸入顯示名稱,則在“應用程序”窗口中使用主機名標識遠程主機。
  4. 單擊“確定”。

單擊“確定”後,將在“遠程”節點下顯示遠程主機的節點。展開遠程主機節點可查看遠程主機上運行的 Java 應用程序。

您可以雙擊遠程應用程序的名稱,在 VisualVM 中打開該應用程序標簽。

有關更多信息,請參見以下文檔:

  • Working with Remote Applications(使用遠程應用程序)

安裝 VisualVM 插件

通過安裝 VisualVM 更新中心提供的插件,可以向 VisualVM 添加功能。例如,安裝 VisualVM-MBeans 插件可以向應用程序標簽中添加 "MBeans" 標簽,通過此標簽,可以在 VisualVM 內監視和管理 MBeans。

安裝 VisualVM 插件:

  1. 從主菜單中選擇“工具”>“插件”。
  2. 在“可用插件”標簽中,選中該插件的“安裝”復選框。單擊“安裝”。
  3. 逐步完成插件安裝程序。

該屏幕快照顯示了選中 VisualVM-MBeans 插件的“插件”管理器。

Copyright © Linux教程網 All Rights Reserved