av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Java應用/JVM宕機排查步驟操作

瀏覽:17日期:2022-08-24 14:24:49

相信大家都遇到過,自己的Java應用運行一段時間就宕機了或者響應請求特別慢。這時候就需要我們了來找出問題所在了。絕大部分都是代碼問題導致的。

一、服務宕機

如果是服務宕機,發生致命問題導致進程已經死掉了,那么已經訪問不了了,通常都是CPU問題引起的,程序一般會自己生成javacore文件,一般生成位置在/root目錄或jar包同目錄下。JavaCore文件主要保存的是Java應用各線程在某一時刻的運行的位置,即JVM執行到哪一個類、哪一個方法、哪一個行上。

找到這個文件,執行命令

gdb java <文件>

bt

如果文件沒有損壞的話可以看到完整的棧調用信息。就可以定位到問題代碼所在。

我曾經就因為底層調用的一個geo庫出問題,導致程序直接掛掉,分析core文件可以清晰的看到native方法的調用。

二、服務響應請求慢

出現這個問題一般都是內存溢出,GC線程一直在重復GC,沒有線程來處理用戶請求,或者問題代碼導致CPU占用過高。

程序崩潰前會生成HeapDump文件,也可以手動生成,HeapDump是一個二進制文件,它保存了某一時刻JVM堆中對象使用情況。

在JVM啟動參數要配置好HeapDump的生成位置和配置打印gc日志。這樣才能排查問題。

先分析GC日志

在線分析工具地址:https://gceasy.io/

Java應用/JVM宕機排查步驟操作

把gc文件上傳就好了,就可以看到分析結果。重點關注什么區域的GC占用最多時間。

離線分析工具:GCViewer 是一款開源的GC日志分析工具。

如果程序內存溢出,通過分析gc文件可以發現程序內存占用機會100%而且一直重復GC。

分析HeapDump文件

1、先找到Java應用的pid

ps -ef | grep java 或者 jps -l 查看

2、查看堆內存使用量

jmap -heap <pid>

3、查看Java進程中的每一個線程的情況(linux),可以清晰的看到每一個線程的cpu及內存使用情況

top -Hp <pid>

window下可以借助工具 Process Explorer,

Java應用/JVM宕機排查步驟操作

4、打印線程快照信息,保存到文件xxx.txt中方便查看

jstack <pid> > xxx.txt

參考這一篇文章: https://www.jb51.net/article/195797.htm

5、通過top -Hp <pid>看到的線程id是10進制的,我們輸出到xxx.txt中的是16進制,所以需要轉一下,找一個異常線程tid

printf '%x' <tid> 假如輸出為 1111

6、在xxx.txt文件中查找tid為1111的棧信息,可以看到這個線程在干什么,定位到問題代碼。

7、程序宕機會自動產生dump文件,若沒有宕機就手動導出dump文件

jmap -dump:format=b,file=文件名 <pid>

桌面分析工具:Eclipse Memory Analyzer,它有windows版的和Linux版的

windows下:把HeapDump文件放進去就可以了,分析完后,很直觀的看到當前內存占用量最高的是某個類的某個參數。持有了多少個對象,這些對象占用了多少內存,從而定位到問題代碼。

Linux下:先把Eclipse Memory Analyzer版上傳到服務器,解壓,假如/home/mat為解壓后路徑,執行命令

/home/mat/ParseHeapDump.sh <文件名> org.eclipse.mat.api:suspects prg.eclipse.mat.api:overview

org.eclipse.mat.api:top_components

分析完之后會在當前文件生成結果文件。下載到本地查看即可。

以上這篇Java應用/JVM宕機排查步驟操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 亚洲免费人成在线视频观看 | 久久精品av | 古装三级在线播放 | 国产精品1区2区 | 欧美一区二区三区视频 | 色网在线看 | 黄色在线免费观看 | 欧美lesbianxxxxhd视频社区 | 午夜视频导航 | 视频一区二区在线观看 | 日韩一区二区三区视频在线观看 | 日本在线观看视频 | 亚洲精品91 | 少妇淫片aaaaa毛片叫床爽 | 国产小视频自拍 | 免费v片| 日日夜夜精品免费视频 | 色吊丝2| 99精品一区二区三区 | 亚洲福利 | 国产成人精品一区二区三区四区 | 99国内精品久久久久久久 | 国产精品免费小视频 | 亚洲精品视频免费 | 精品少妇一区二区三区在线播放 | 欧美激情一区二区三级高清视频 | 国产乱码精品1区2区3区 | 久久99久久99精品免视看婷婷 | 亚州影院| 欧美三级电影在线播放 | 国产日韩欧美一区二区 | 久久麻豆精品 | 欧美视频二区 | 精品久久久久香蕉网 | 亚洲网站观看 | 波多野结衣精品 | 青青草原综合久久大伊人精品 | 亚洲一区二区在线视频 | 欧美xxxx色视频在线观看免费 | 日韩在线一区二区 | 免费视频一区二区 |