前几天有现场报问题,客户端在持续运行一天后,再次点击就失去响应;
确定问题篇:
=====================================================
将截取 thread dump的方式告知现场同事后收到具体的thread dum日志,最后有如下一段:
Heap
def new generation total 106368K, used 106327K [0x03d20000, 0x0b080000, 0x0b080000)
eden space 94592K, 100% used [0x03d20000, 0x09980000, 0x09980000)
from space 11776K, 99% used [0x09980000, 0x0a4f5ef8, 0x0a500000)
to space 11776K, 0% used [0x0a500000, 0x0a500000, 0x0b080000)
tenured generation total 1417856K, used 1417855K [0x0b080000, 0x61920000, 0x61920000)
the space 1417856K, 99% used [0x0b080000, 0x6191fff8, 0x61920000, 0x61920000)
compacting perm gen total 65536K, used 45968K [0x61920000, 0x65920000, 0x69920000)
the space 65536K, 70% used [0x61920000, 0x64604298, 0x64604400, 0x65920000)
No shared spaces configured.
osgi> Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap space
就像我这样不明眼的人都能看出,内存泄漏了
现在对log,进行一下分析:
分析的依据,请见:
http://www.iteye.com/topic/212967 //里面还有对其他文章的引用
def new generation total 106368K, used 106327K //这个指的是年轻带内存区域,分配了106368K,
使用了106327K ;
eden space 94592K, 100% used //eden 用完
from space 11776K, 99% used //from Survivor区用完
to space 11776K, 0% //to Survivor 区因为垃圾回收机制的问题,只会是0%
//以上说明年轻区已经用完了
tenured generation total 1417856K, used 1417855K
the space 1417856K, 99% used //说明年老区内存已经用完,因为年老区一般存放生命周期比较长的对象,
所以,说明很有可能有大量的java对象被长时间的持有;
compacting perm gen total 65536K, used 45968K
the space 65536K, 70% used //持久区还有空间
以上的分析,应该就能的出,系统确实有内存泄露的问题!!!
分析问题篇:
=====================================================
基本确认了问题,现在要对问题进行分析了;使用jprofiler来对系统进行性能检测;
因为我们的客户端是基于RCP开发的,并打包成exe可执行的文件,而jprofiler运行的时候,需要指定
被监控类的主类,或是jar文件;呵呵,傻眼了
但是一想,java的程序万变不离其宗,即使是通过exe来启动的。google了一下,有文章上写
RCP启动不成功的,然后填出一堆的异常串,看看最底下的报错语句
at org.eclipse.equinox.launcher.Main.run(Main.java:1236)
就是这个类了,顺藤摸瓜,发现启动的架包就是org.eclipse.equinox.launcher_1.0.1.R33x_v20080118.jar,
哈哈,搞定!就这么一配,哈哈jprofiler带着系统一起运行起来了;
这一两天都在使用jprofiler分析......,因为有其他更重要的事,所以暂时耽搁下,以后再回来
分享到:
相关推荐
Android推送遇到的问题--app关闭后,点击通知后点击通知后app未初始化的问题
当科技王子遇到童话公主-----电子童书.docx
QQ电脑管家在诊所怎么找到我遇到的问题-.docx
Web_开发中遇到的UTF-8以及乱码的问题总结.zip
主要为大家详细介绍了MySQL导出数据遇到secure-file-priv问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
金融资产配置的思考之一:拇指法则,股市“转角遇到爱”-0214-光大证券-25页.pdf
金融服务业-美国金融服务业当分支银行遇到数字银行-2019.12.18-29页.rar
自从换控制芯片后,一直有各种各样的DT,所以觉得有时间了就把遇到的问题写出来,造福后人。
Bu-link调试遇到的问题 问题总结 参考 Bu-link调试遇到的问题 问题总结 参考 Bu-link调试遇到的问题 问题总结 参考
「Android」智能IOT安全遇到的挑战 - 物联网安全 区块链 应用安全 安全体系 NGFW 安全众测
安装nginx以及fastdfs-nginx-module 以及遇到的问题-附件资源
【技术分享】WebLogic CVE-2021-2135分析及POC构造遇到的问题 法律法规 安全实践 web安全 APT 信息安全
大虾们都来帮我整整Matlab的Sfunction问题急-theta.m 在下是新手,遇到问题如下,请高手帮帮我
qt运行出现出现错误1 错误描述调试一个程序,在非break point的地方,弹出窗口,说是出现错误,看底部 out put窗口说是Invalid Addre
oracle11g安装及遇到的问题-附件资源
西门子PLC常见编程问题点总结(S7-300_S7-1200)