温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

jca工具怎么分析was的javacore

发布时间:2021-11-20 14:51:30 来源:亿速云 阅读:266 作者:柒染 栏目:云计算

这篇文章将为大家详细讲解有关jca工具怎么分析was的javacore,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

 一朋友打电话求助,问怎样简单方便的分析WAS的JAVACORE文件。我给他做了个实例解析,下面是一个过程记录。

一、工具下载

可从IBM官网下载JCA工具,专门用来分析JAVACORE文件的工具。使用JCA工具需要JAVA环境,再下载一个JDK。由于我们使用的JCA是3.9.6版,所以下载一个JDK1.6版的就行。

二、启动JCA工具

安装完JDK1.6后,配置JAVA环境。JAVA环境的配置简单说一下:

打开 我的电脑--属性--高级--环境变量
新建系统变量JAVA_HOME 和CLASSPATH
变量名:JAVA_HOME

变量值:C:\Program Files\Java\1.6.0_37

变量名:CLASSPATH

变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。
变量名:Path
变量值:C:\Program Files\Java\1.6.0_37\bin;C:\Program Files\Java\1.6.0_37\jre\bin;

启动JCA工具

C:\jca396>java -Xmx2000M -jar jca396.jar

Error occurred during initialization of VM

Could not reserve enough space for object heap

Could not create the Java virtual machine.

如果出现这个错误,把内存分配小点就可以了。

C:\jca396>java -Xmx500M -jar jca396.jar  javacore.20131101.txt

jca工具怎么分析was的javacore

点开waiting状态比较多的事件,有如下显示

jca工具怎么分析was的javacore

这是典型的BLOCK堆载,在IBM官网有相应的参考文章,解决这个问题一个比较简单的方法就是增大WAS的JVM大小。

三、解决问题

进入WAS控制台,找到JVM设置,进行调整。如图:

服务器--应用程序服务器--app01--进程定义-Java 虚拟机

jca工具怎么分析was的javacore

注:当部署在websphere上的应用出现了问题,比如调用缓慢,线程挂起,节点假死的时候,光看应用的SystemOut.log是不够的,我们还需要手动生成javacore文件,查询服务器上各个线程的堆栈情况,它可以具体到一个方法的调用情况。Javacore是Java应用程序在某一时间的文本表示形式,也可理解为Java Dump(通常称为Thread Dump)的线程转储文件。该文件记录了整个JVM的运行情况,包含线程、垃圾回收、JVM运行参数、内存地址等信息。JVM的许多问题都可以用这个文件进行诊断,其中比较典型的包括线程阻塞、CPU使用率过高、JVM Crash、堆内存不足和类装载等问题。

Javacore文件通常以*.txt方式显示,名称格式主要是以Javacore为头,加上日期号、产生的时间号、当时的线程编号。

Javacore文件的生成

ps -ef | grep java查看进程ID,在linux 系统中 使用 kill -3 pid ,它会在应用程序的概要文件的目录下生成一个javacore 文件,比如在 /usr/IBM/WebSphere/AppServer1/profiles/AppSrv01下。

关于jca工具怎么分析was的javacore就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI