- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
综调四版项目组JavaCore及HeapDump分析讲义
综调四版项目组JavaCore 及HeapDump 分析讲义
(一)Websphere 如何生成javacore 与heapdump 文件
重点我们要明白javacore 文件(关于cpu 的)而heapdump 文件(关于内存
的)
1. javacore 与heapdump 有何区别
JavaCore 是关于CPU 的,而HeapDump 文件是关于内存的。
1) JavaCore 文件主要保存的是Java 应用各线程在某一时刻的运行的位置,即JVM 执
行到哪一个类、哪一个方法、哪一个行上。它是一个文本文件,打开后可以看到每
一个线程的执行栈,以stack trace 的显示。通过对JavaCore 文件的分析可以得
到应用是否“卡”在某一点上,即在某一点运行的时间太长,例如数据库查询,长期
得不到响应,最终导致系统崩溃等情况。
2) HeapDump 文件是一个二进制文件,它保存了某一时刻JVM 堆中对象使用情况,
这种文件需要相应的工具进行分析,如IBM Heap Analyzer 这类工具。这类文件
最重要的作用就是分析系统中是否存在内存溢出的情况。
2. javacore 与heapdump 设置
在was 启动前设置下面环境变量(可以加在启动脚本中)
export IBM_HEAPDUMP=true
export IBM_HEAP_DUMP=true
export IBM_HEAPDUMP_OUTOFMEMORY=true
export IBM_HEAPDUMPDIR=directory path
马宏波mahongbo@
1 / 23
根据需要依次增加对应的条目
这两个文件可以用手工的方式生成,当我们会遇到系统变慢或无响应的情况,这时就以采用
手工的方式生成JavaCore 及HeapDump 文件。
在Unix/Linux 上,产生这两个文件的方法如下:
# ps -ef | grep java
user 4616 4582 0 17:30 pts/0 00:00:00 grep java
root 5580 1 0 Oct27 ? 00:02:27 /usr/bin/java -server -XX:PermSize=64M -XX:MaxPermSi
ze=128m-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.uti
l.logging.config.file=/usr/local/tomcat8090/conf/perties-Djava.endorsed.dirs=/u
sr/local/tomcat8090/endorsed -classpath :/usr/local/tomcat8090/bin/bootstrap.jar -Dcatali
na.base=/usr/local/tomcat8090-Dcatalina.home=/usr/local/tomcat8090 -Djava.io.tmpdir=/
usr/local/tomcat8090/temp org.apache.catalina.startup.Bootstrap start
马宏波mahongbo@
2 / 23
# kill -3 5580
首先,找出Java 进程id ,然后再执行‘kill -3 进程号’的操作,等文件生成后再做一次同样
的操作,再产生一组文件。
将上面产生的 txt 文件和/usr/WebSphere/AppServer/javacore*文件和heapdump 文件拷贝到本地,然
后删除这些文件,因为这些文件会占用较大的文件系统空间。
将/usr/WebSphere/AppSer
文档评论(0)