日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

JVM-12虚拟机性能监控与故障处理工具之【JDK的可视化工具-VisualVM】

發(fā)布時間:2025/3/21 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JVM-12虚拟机性能监控与故障处理工具之【JDK的可视化工具-VisualVM】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 思維導(dǎo)圖
  • 概述
  • 生成、瀏覽堆轉(zhuǎn)儲快照
  • 分析程序性能
  • BTrace

思維導(dǎo)圖


概述

Visual VM (All-in-One Java Troubleshooting Tool)是目前為止隨JDK發(fā)布的功能最強大的運行監(jiān)視和故障處理程序。 Visual VM除了提供運行監(jiān)視、故障處理外,還提供了比如性能分析(Profiling),對應(yīng)用程序的實際性能影響很小,使得它可以直接應(yīng)用在生產(chǎn)環(huán)境,這個優(yōu)點是JProfiler、YourKit等第三方的性能分析工具無法比擬的.

VisualVM可以做到

  • 顯示虛擬機進程以及進程的配置、環(huán)境信息(jps 、jinfo)
  • 監(jiān)視應(yīng)用程序的CPU、GC、堆、方法區(qū)以及線程的信息(jstat、jstack)
  • dump以及分析堆轉(zhuǎn)儲快照(jmap、jhat)
  • 方法級的程序運行性能分析,找出被調(diào)用最多、運行時間最長的而方法
  • 離線程序快照:收集程序的運行配置、線程dump、內(nèi)存dump等信息建立一個快照,方便分析
  • 基于NetBeans平臺開發(fā),可安裝各種各樣的插件,功能強大,精華所在。

#插件安裝

打開 VisualVM圖形化界面工具, 工具 --插件

安裝完插件后,選擇一個需要監(jiān)視的程序就進入程序的主頁面了


生成、瀏覽堆轉(zhuǎn)儲快照

兩種方式生成dump

  • 在“應(yīng)用程序”窗口中右鍵單擊應(yīng)用程序節(jié)點,然后選擇“堆Dump”

  • 在“應(yīng)用程序”窗口中雙機應(yīng)用程序節(jié)點以打開應(yīng)用程序內(nèi)標簽,然后在“監(jiān)視”標簽中單擊“堆Dump”

生成dump文件之后,應(yīng)用程序頁簽將在該堆的應(yīng)用程序下增加一個以【heapdump】開頭的子節(jié)點,并且在主頁簽中打開了該轉(zhuǎn)儲快照。

  • 從堆頁簽中的“摘要”面案可以看到應(yīng)用程序dump時運行的參數(shù)、System.getProperties()的內(nèi)容、線程堆棧等信息。

  • “類”:類面板是以類為統(tǒng)計口徑統(tǒng)計類的實例數(shù)量、容量信息等

  • “實例”:實例面板不能直接使用,因為不能確定用戶想查哪個類的實例,需要通過類面板進入,在類中選擇一個關(guān)心的類后雙擊,即可在實例中看到此類中500個實例的具體屬性信息

  • “OQL控制臺”:運行OQL查詢語句的

如果想保存該dump, 右鍵另存為即可。 要打開一個已經(jīng)存在的dump“文件–裝入”即可


分析程序性能

在Profiler頁簽中,VisaualVM提供了程序運行期間方法級的CPU執(zhí)行時間分析以及內(nèi)存分析。 做Profiling分析肯定會對程序性能有比較大的影響,一般不再生產(chǎn)環(huán)境使用。

CPU分析會統(tǒng)計每個方法的執(zhí)行次數(shù)、執(zhí)行耗時
內(nèi)存分析會統(tǒng)計每個方法關(guān)聯(lián)的對象數(shù)以及這些對象占用的空間。


BTrace

BTrace是sun公司推出的一款Java 動態(tài)、安全追蹤(監(jiān)控)工具,可以在不用重啟的情況下監(jiān)控系統(tǒng)運行情況,方便的獲取程序運行時的數(shù)據(jù)信息,如方法參數(shù)、返回值、全局變量和堆棧信息等,并且做到最少的侵入,占用最少的系統(tǒng)資源。

這項功能對實際生產(chǎn)中的程序很有意義,比如程序出現(xiàn)問題,但排查錯誤的一些必要信息,比如方法參數(shù)、返回值等,但是開發(fā)的時候沒有輸出到日志中,以至于不能不加上日志后重新啟動服務(wù)。 這時候BTrace插件就很方便了。

限制比較多,并且一定要確保腳本的正確性。

在Visual VM“應(yīng)用程序”中選擇對應(yīng)的進程,右鍵會看到“Trace Application”


先了解下,后續(xù)再補充。

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的JVM-12虚拟机性能监控与故障处理工具之【JDK的可视化工具-VisualVM】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。