操作系統:CentOS6.7
JDK版本:jdk1.6.0_45
中間件版本:apache-tomcat-6.0.37
JVM堆內存配置:-Xms8192m-Xmx8192m
系統前臺應用節點告警“URL連接超時”
jstat -gcutil PID
經過查看,JVM堆內存的年輕代和老年代使用率達到100%
Heap Dump是Java進程所使用的內存情況在某一時間的一次快照。以文件的形式持久化到磁盤中。
jmap-dump:live,format=b,file=./log/`hostname`heap.hprof
jcmd
-XX:+HeapDumpOnOutOfMemoryError
當OutOfMemoryError發生時自動生成Heap Dump 文件。
本次dump文件為jmap命令手動生成。
ftp -n
open 192.168.xxx.xxx
user username passwd
passive
binary
hash
lcd /app/scripts/log #headdump路徑
prompt
cd dump #遠程服務器路徑
mput heap.hprof #headdump文件
close
bye
通過DominatorTree視圖可以很容易的找出占用內存最多的幾個對象(根據RetainedHeap或Percentage排序)
以下為輸出的線程信息:
通過分析我們發現cn.chinatowercom.crm.pub.common.StaticParam.queryStaticParam這個線程為可疑線程。交由開發排查發現該線程為導出時生成,導出數據量較大,從緩存獲取的省市區信息,每次只能獲取一條,循環翻譯導致內存溢出。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/130003.html
摘要:直到有一天你會碰到線上奇奇怪怪的問題,如線程執行一個任務遲遲沒有返回,應用假死。正好這次借助之前的一次生產問題來聊聊如何排查和解決問題。本地模擬上文介紹的是線程相關問題,現在來分析下內存的問題。盡可能的減少多線程競爭鎖。 showImg(https://segmentfault.com/img/remote/1460000015568421?w=2048&h=1150); 前言 之前或...
摘要:結合的日志發現就算是發生了老年代也已經回收不了,內存已經到頂。定位由于生產上的內存文件非常大,達到了幾十。也是由于我們的內存設置太大有關。同時后臺也開始打印內存溢出了,這樣便復現出問題。結果發現類型的對象占用了將近的內存。 showImg(https://segmentfault.com/img/remote/1460000016186784?w=2048&h=1365); 前言 Ou...
摘要:我所在的美團酒店事業部去年月份成立,新的業務新的開發團隊,這一切使得我們的前后端分離推進的很徹底。日志監控平臺日志監控平臺是美團內部的一個日志收集系統,目前美團統一使用收集日志,具有接收格式日志的能力,而日志監控平臺也是以格式日志來收集。 轉自:美團技術團隊 作者:美團技術團隊 分享理由:很好的分享,可見,基于Node的前后端分離的架構是越顯流行和重要,前端攻城獅們,No...
摘要:內存溢出分配的內存空間超過系統內存。內存泄漏的原因分析由大塊組成堆,棧,本地方法棧,程序計數器,方法區。內存溢出的原因分析內存溢出是由于沒被引用的對象垃圾過多造成沒有及時回收,造成的內存溢出。小結棧內存溢出程序所要求的棧深度過大導致。 showImg(https://segmentfault.com/img/bVbweuq?w=563&h=300); 前言:JVM中除了程序計數器,其他...
摘要:換句話說就是,讓測試更有針對性。得益于強大的測試技術,兼容性測試的檢出率遠遠高于業界水平。同時,在性能測試方面,即提供了項性能指標曲線性能分析,更提供了強大的內存泄漏和內存溢出的檢測和分析能力。 摘要: Android兼容性測試旨在幫助解決Android應用在不同真機機型上的各類兼容性問題,包括 Crash/ANR分析、6項性能分析、UI檢測、3個版本的覆蓋安裝檢測等。Android兼...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20