神奇的 perfma:一站式解決所有 JVM 疑難雜症!

目錄

JVM參數分析

參數查詢

參數檢查

參數生成

Java線程Dump分析

Java內存Dump分析

JVM文章

參考地址


以下文章來源於公衆號:阿飛的博客 ,作者阿飛的博客

每一個Java程序員應該都碰到過或多或少的JVM問題,比如:一臺8G的服務器怎麼配置JVM參數?我的JVM參數是否合理?如何分析內存Dump文件?如何分析線程Dump文件,想看一些高質量的JVM相關的文章等等。

如果你從來沒有碰到過這些問題,那你真的不能算是一個合格的Java程序員!

JVM參數分析

這是PerfMa公司推出的第一款產品,爲用戶學習和使用JVM參數提供便利。即使不太懂JVM參數的初級用戶,也可以藉助本產品得到相對合理的參數列表。從第一版推出至今,已經免費服務了數萬用戶。

JVM參數分析的鏈接地址:

https://opts.console.perfma.com/

這塊服務提供了若干個服務:參數查詢、參數檢查、參數變遷、參數優化、參數生成等。

參數查詢

如下圖所示,即可以單個查詢JVM參數(-XX:+UseCMSInitiatingOccupancyOnly),也可以批量查詢JVM參數

(例如-Xms1280m -Xmx1280m -Xmn480m -Xss256k -XX:PermSize=256m -XX:MaxPermSize=256m -XX:MaxDirectMemorySize=256m -XX:+UseConcMarkSweepGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=68 -verbose:gc -XX:+PrintGCDetails):

參數檢查

參數檢查用法類似,輸入你需要檢查的JVM參數,然後perfma就會給出建議,如下圖所示:

參數生成

參數生成的用法也很簡單,只需要填入環境配置、基礎配置等,perfma就能一鍵生成比較合理的JVM參數。如下圖所示:

Java線程Dump分析

定位JVM問題時,我們通常需要分析Java線程Dump(Java線程Dump生成方式爲:jstak -l pid > pid.log)。perfma提供了3種形式:本地上傳,HTTP下載,FTP下載。我們一般本地上傳用的比較多。

上傳線程Dump文件後,我們就會得到線程分析結果,如下圖所示:

Java內存Dump分析

當JVM發生OOM Crash,或者JVM頻繁FGC時我們都需要分析內存Dump文件。當然通常我們都會使用MAT來分析Dump文件。不過perfma對Dump分析結果做了更好的圖形化展示。如下圖所示,就是一個Dump文件的分析結果:

JVM文章

perfma同樣提供了很多高質量原創JVM文章,鏈接地址:https://club.perfma.com/。這些文章中很多都是來自笨神以往定位JVM問題的真實案例,對JVM感興趣的同學,絕對是一場饕餮盛宴,不容錯過:

此外,如果你也有原創性的JVM相關問題,也可以在這裏投稿。如果你有JVM相關問題,也可以在這裏求助笨神,可能會得到一些幫助:

參考地址

JVM參數分析更詳細使用參考地址:

https://www.perfma.com/docs/opts/opts-guide

Java線程Dump分析使用參考地址:

https://www.perfma.com/docs/thread/thread-guide

Java內存Dump分析使用參考地址:

https://www.perfma.com/docs/memory/memory-guide

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章