VisualVM是一款集成了多個jdk命令行的可視化工具,一般都用來對Java應用程序做性能分析和調優(yōu),功能包括生成和分析海量數(shù)據(jù)、跟蹤內存泄漏、監(jiān)控垃圾回收器、執(zhí)行內存和CPU分析,同時它還支持在MBeans上進行瀏覽和操作,有需要的趕快下載吧, VisualVM功能介紹一、性能分析的主要方式 1.監(jiān)視:監(jiān)視是一種用來查看應用程序運行時行為的一般方法。通常會有多個視圖(View)分別實時地顯示 CPU 使用情況、內存使用情況、線程狀態(tài)以及其他一些有用的信息,以便用戶能很快地發(fā)現(xiàn)問題的關鍵所在。 2.轉儲:性能分析工具從內存中獲得當前狀態(tài)數(shù)據(jù)并存儲到文件用于靜態(tài)的性能分析。Java 程序是通過在啟動 Java 程序時添加適當?shù)臈l件參數(shù)來觸發(fā)轉儲操作的。它包括以下三種: 系統(tǒng)轉儲:JVM 生成的本地系統(tǒng)的轉儲,又稱作核心轉儲。一般的,系統(tǒng)轉儲數(shù)據(jù)量大,需要平臺相關的工具去分析,如 Windows 上的 windbg 和 Linux 上的 gdb. Java 轉儲:JVM 內部生成的格式化后的數(shù)據(jù),包括線程信息,類的加載信息以及堆的統(tǒng)計數(shù)據(jù)。通常也用于檢測死鎖。 堆轉儲:JVM 將所有對象的堆內容存儲到文件。 二、快照: 應用程序啟動后,性能分析工具開始收集各種運行時數(shù)據(jù),其中一些數(shù)據(jù)直接顯示在監(jiān)視視圖中,而另外大部分數(shù)據(jù)被保存在內部,直到用戶要求獲取快照,基于這些保存的數(shù)據(jù)的統(tǒng)計信息才被顯示出來?煺瞻藨贸绦蛟谝欢螘r間內的執(zhí)行信息,通常有 CPU 快照和內存快照兩種類型。 CPU 快照:主要包含了應用程序中函數(shù)的調用關系及運行時間,這些信息通?梢栽 CPU 快照視圖中進行查看。 內存快照:主要包含了內存的分配和使用情況、載入的所有類、存在的對象信息及對象間的引用關系等。這些信息通?梢栽趦却婵煺找晥D中進行查看。 三、性能分析: 性能分析是通過收集程序運行時的執(zhí)行數(shù)據(jù)來幫助開發(fā)人員定位程序需要被優(yōu)化的部分,從而提高程序的運行速度或是內存使用效率,主要有以下三個方面: CPU 性能分析:CPU 性能分析的主要目的是統(tǒng)計函數(shù)的調用情況及執(zhí)行時間,或者更簡單的情況就是統(tǒng)計應用程序的 CPU 使用情況。通常有 CPU 監(jiān)視和 CPU 快照兩種方式來顯示 CPU 性能分析結果。 內存性能分析:內存性能分析的主要目的是通過統(tǒng)計內存使用情況檢測可能存在的內存泄露問題及確定優(yōu)化內存使用的方向。通常有內存監(jiān)視和內存快照兩種方式來顯示內存性能分析結果。 線程性能分析:線程性能分析主要用于在多線程應用程序中確定內存的問題所在。一般包括線程的狀態(tài)變化情況,死鎖情況和某個線程在線程生命期內狀態(tài)的分布情況等 VisualVM特色1、內存分析 VisualVM 通過檢測 JVM 中加載的類和對象信息等幫助我們分析內存使用情況,我們可以通過 VisualVM 的監(jiān)視標簽和 Profiler 標簽對應用程序進行內存分析。 2、CPU 分析 VisualVM 能夠監(jiān)控應用程序在一段時間的 CPU 的使用情況,顯示 CPU 的使用率、方法的執(zhí)行效率和頻率等相關數(shù)據(jù)幫助我們發(fā)現(xiàn)應用程序的性能瓶頸。我們可以通過 VisualVM 的監(jiān)視標簽和 Profiler 標簽對應用程序進行 CPU 性能分析。 3、線程分析 Java 語言能夠很好的實現(xiàn)多線程應用程序。當我們對一個多線程應用程序進行調試或者開發(fā)后期做性能調優(yōu)的時候,往往需要了解當前程序中所有線程的運行狀態(tài),是否有死鎖、熱鎖等情況的發(fā)生,從而分析系統(tǒng)可能存在的問題。 4、快照分析 我們可以使用 VisualVM 的快照功能生成任意個性能分析快照并保存到本地來輔助我們進行性能分析。快照為捕獲應用程序性能分析數(shù)據(jù)提供了一個很便捷的方式因為快照一旦生成可以在任何時候離線打開和查看,也可以相互傳閱。 VisualVM 提供了兩種類型的快照: Profiler 快照:當有一個性能分析會話(內存或者 CPU)正在進行時,我們可以通過性能分析結果工具欄的“快照”按鈕生成 Profiler 快照捕獲當時的性能分析數(shù)據(jù)。 應用程序快照:我們可以右鍵點擊左側 Applications 窗口中應用程序節(jié)點,選擇“應用程序快照”為生成一個應用程序快照。應用程序快照會收集某一時刻的堆轉儲,線程轉儲和 Profiler 快照,同時也會捕獲 JVM 的一些基本信息。 5、轉儲功能 線程轉儲的生成與分析:VisualVM 能夠對正在運行的本地應用程序生成線程轉儲,把活動線程的堆棧蹤跡打印出來,幫助我們有效了解線程運行的情況,診斷死鎖、應用程序癱瘓等問題。 堆轉儲的生成與分析:VisualVM 能夠生成堆轉儲,統(tǒng)計某一特定時刻 JVM 中的對象信息,幫助我們分析對象的引用關系、是否有內存泄漏情況的發(fā)生等。 VisualVM安裝方法VisualVM 是一個性能分析工具,自從 JDK 6 Update 7 以后已經作為 Oracle JDK 的一部分,位于 JDK 根目錄的 bin 文件夾下。VisualVM 自身要在 JDK6 以上的版本上運行,但是它能夠監(jiān)控 JDK1.4 以上版本的應用程序。下面主要介紹如何安裝 VisualVM 以及各種 VisualVM 上的插件。 一、安裝VisualVM 1、將 VisualVM 安裝程序解壓縮到本地系統(tǒng)。 2、導航至 VisualVM 安裝目錄的 bin 目錄,然后啟動 jvisualvm.exe。 二、安裝 VisualVM 上的插件 VisualVM 插件中心提供很多插件以供安裝向 VisualVM 添加功能。可以通過 VisualVM 應用程序安裝,或者從 VisualVM 插件中心手動下載插件,然后離線安裝。另外,用戶還可以通過下載插件分發(fā)文件 (.nbm 文件 ) 安裝第三方插件為 VisualVM 添加功能。 1、VisualVM 插件中心安裝插件安裝步驟 : 從主菜單中選擇“工具”>“插件”。 在“可用插件”標簽中,選中該插件的“安裝”復選框。單擊“安裝”。 逐步完成插件安裝程序。 2、從主菜單中選擇“工具”>“插件”。 在“已下載”標簽中,點擊"添加插件"按鈕,選擇已下載的插件分發(fā)文件 (.nbm) 并打開。 選中打開的插件分發(fā)文件,并單擊"安裝"按鈕,逐步完成插件安裝程序。 使用編程語言寫的程序,由于每條指令都對應計算機一個特定的基本動作,所以程序占用內存少、執(zhí)行效率高。 |
1深度技術win10正式版ghost(32位)旗艦......
2番茄花園win10 X86 ghost 標準通......
3番茄花園Win10_Ghost Win10 64......
4雨林木風 GHOST WIN10 X64 快速裝......
5深度技術GHOST WIN10 X64 尊貴專業(yè)......
6筆記本Win10系統(tǒng) 64位官方正式版2023年......
7筆記本win10正式版ghost(32位)旗艦免......
8雨林木風win10(32位)ghost 修正專業(yè)......