成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

線上系統(tǒng)內(nèi)存溢出分析方法

IT那活兒 / 1404人閱讀
線上系統(tǒng)內(nèi)存溢出分析方法
點擊上方藍字關(guān)注我們


一、生產(chǎn)環(huán)境


操作系統(tǒng):CentOS6.7

JDK版本:jdk1.6.0_45

中間件版本:apache-tomcat-6.0.37

JVM堆內(nèi)存配置:-Xms8192m-Xmx8192m


二、事件起因


系統(tǒng)前臺應(yīng)用節(jié)點告警“URL連接超時”


2.1 使用jstat命令—JVM統(tǒng)計監(jiān)測工具對堆內(nèi)存進行分析

jstat -gcutil PID

經(jīng)過查看,JVM堆內(nèi)存的年輕代和老年代使用率達到100%


2.2 生成HeapDump文件

Heap Dump是Java進程所使用的內(nèi)存情況在某一時間的一次快照。以文件的形式持久化到磁盤中。

Heap Dump 獲取方式

1、使用 jmap命令生成 dump文件

jmap-dump:live,format=b,file=./log/`hostname`heap.hprof

2、使用 jcmd命令生成 dump文件

jcmd GC.heap_dump /app/share/dump/3.39/`date +%Y%m%d%H%M`heap.hprof

3、使用 JVM參數(shù)獲取 dump文件

-XX:+HeapDumpOnOutOfMemoryError

當OutOfMemoryError發(fā)生時自動生成Heap Dump 文件。

本次dump文件為jmap命令手動生成。


2.3 上傳至內(nèi)網(wǎng)分析服務(wù)器

ftp -n


open 192.168.xxx.xxx


user username passwd

passive

binary

hash


lcd /app/scripts/log #headdump路徑

prompt

cd dump              #遠程服務(wù)器路徑

mput heap.hprof      #headdump文件


close

bye


三、利用MAT檢查內(nèi)存泄漏


3.1、打開MemoryAnalyzer軟件,F(xiàn)ile --> Heap Dump --> next,選擇對應(yīng)的進程,等待MAT加載完成,點擊Finish就可以進入MAT分析頁面的首頁。


3.2、使用MAT的DominatorTree視圖,定位到內(nèi)存溢出源

通過DominatorTree視圖可以很容易的找出占用內(nèi)存最多的幾個對象(根據(jù)RetainedHeap或Percentage排序)

以下為輸出的線程信息:

通過分析我們發(fā)現(xiàn)cn.chinatowercom.crm.pub.common.StaticParam.queryStaticParam這個線程為可疑線程。交由開發(fā)排查發(fā)現(xiàn)該線程為導(dǎo)出時生成,導(dǎo)出數(shù)據(jù)量較大,從緩存獲取的省市區(qū)信息,每次只能獲取一條,循環(huán)翻譯導(dǎo)致內(nèi)存溢出。


END



文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/130003.html

相關(guān)文章

  • 一次線上問題排查所引發(fā)的思考

    摘要:直到有一天你會碰到線上奇奇怪怪的問題,如線程執(zhí)行一個任務(wù)遲遲沒有返回,應(yīng)用假死。正好這次借助之前的一次生產(chǎn)問題來聊聊如何排查和解決問題。本地模擬上文介紹的是線程相關(guān)問題,現(xiàn)在來分析下內(nèi)存的問題。盡可能的減少多線程競爭鎖。 showImg(https://segmentfault.com/img/remote/1460000015568421?w=2048&h=1150); 前言 之前或...

    levy9527 評論0 收藏0
  • 強如 Disruptor 也發(fā)生內(nèi)存溢出?

    摘要:結(jié)合的日志發(fā)現(xiàn)就算是發(fā)生了老年代也已經(jīng)回收不了,內(nèi)存已經(jīng)到頂。定位由于生產(chǎn)上的內(nèi)存文件非常大,達到了幾十。也是由于我們的內(nèi)存設(shè)置太大有關(guān)。同時后臺也開始打印內(nèi)存溢出了,這樣便復(fù)現(xiàn)出問題。結(jié)果發(fā)現(xiàn)類型的對象占用了將近的內(nèi)存。 showImg(https://segmentfault.com/img/remote/1460000016186784?w=2048&h=1365); 前言 Ou...

    amuqiao 評論0 收藏0
  • [ 好文分享 ] 美團酒店Node全棧開發(fā)實踐

    摘要:我所在的美團酒店事業(yè)部去年月份成立,新的業(yè)務(wù)新的開發(fā)團隊,這一切使得我們的前后端分離推進的很徹底。日志監(jiān)控平臺日志監(jiān)控平臺是美團內(nèi)部的一個日志收集系統(tǒng),目前美團統(tǒng)一使用收集日志,具有接收格式日志的能力,而日志監(jiān)控平臺也是以格式日志來收集。 轉(zhuǎn)自:美團技術(shù)團隊 作者:美團技術(shù)團隊 分享理由:很好的分享,可見,基于Node的前后端分離的架構(gòu)是越顯流行和重要,前端攻城獅們,No...

    wangdai 評論0 收藏0
  • 關(guān)于JVM內(nèi)存溢出的原因分析及解決方案探討

    摘要:內(nèi)存溢出分配的內(nèi)存空間超過系統(tǒng)內(nèi)存。內(nèi)存泄漏的原因分析由大塊組成堆,棧,本地方法棧,程序計數(shù)器,方法區(qū)。內(nèi)存溢出的原因分析內(nèi)存溢出是由于沒被引用的對象垃圾過多造成沒有及時回收,造成的內(nèi)存溢出。小結(jié)棧內(nèi)存溢出程序所要求的棧深度過大導(dǎo)致。 showImg(https://segmentfault.com/img/bVbweuq?w=563&h=300); 前言:JVM中除了程序計數(shù)器,其他...

    xuexiangjys 評論0 收藏0
  • 100%移植阿里云移動測試技術(shù),竟僅需1周?!——移動測試專有云(3)——內(nèi)容詳解

    摘要:換句話說就是,讓測試更有針對性。得益于強大的測試技術(shù),兼容性測試的檢出率遠遠高于業(yè)界水平。同時,在性能測試方面,即提供了項性能指標曲線性能分析,更提供了強大的內(nèi)存泄漏和內(nèi)存溢出的檢測和分析能力。 摘要: Android兼容性測試旨在幫助解決Android應(yīng)用在不同真機機型上的各類兼容性問題,包括 Crash/ANR分析、6項性能分析、UI檢測、3個版本的覆蓋安裝檢測等。Android兼...

    付永剛 評論0 收藏0

發(fā)表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<