- 浏览: 109069 次
- 性别:
- 来自: 北京
文章分类
最新评论
今天帮助项目组分析websphere 7下的线程挂起问题,现象如下:
后台日志抛出类似下面的异常:
线程“WebContainer : 6”(0000001f)已保持活动状态 621077 毫秒,此线程可能已挂起。在服务器中共有 1 个线程可能处于挂起状态。
问题分析:
线程或数据库存在锁的现象,决定采用jca分析工具分析javacore文件,看哪个线程有锁。
问题排查过程:
websphere服务器端(suse Linux)执行如下命令:
ps -ef|grep java
查找webpshere的进程,再调用:
kill -3 pid
动态生成一个javacore 文件,比如: /opt/IBM/WebSphere/AppServer1/profiles/AppSrv01目录下的生成了javacore.20120613.084258.15830.0001.txt文件
(此kill命令不会造成在线业务系统停止,应用服务器不需要重新启动)
然后采用jca分析工具,我采用的是jca401的版本,进入dos环境,执行:
java -Xmx200m -jar jca401.jar
会打开图形界面,调入javacore文件,进行分析发现有线程处于blocked状态,点击toolbar中的“Thread Detail”图标,能够看到具体的线程状态及明细,定位blocked的线程,查看明细,本例中发现该线程blocked by一个web container线程,该线程的调用堆栈如下:
t oracle/jdbc/driver/OracleStatement.executeQuery(OracleStatement.java:1313(Compiled Code))
at com/ibm/ws/rsadapter/jdbc/WSJdbcStatement.pmiExecuteQuery(WSJdbcStatement.java:1621(Compiled Code))
at com/ibm/ws/rsadapter/jdbc/WSJdbcStatement.executeQuery(WSJdbcStatement.java:925(Compiled Code))
at com/itown/framework/persistence/SingleDBHelper.executeQuery(SingleDBHelper.java:116(Compiled Code))
at com/itown/iesap/dbatch/service/InspFirstTrialSqlSearchService.findExcept(InspFirstTrialSqlSearchService.java:457(Compiled Code))
at com/itown/iesap/dbatch/service/InspFirstTrialSqlSearchService.execute(InspFirstTrialSqlSearchService.java:526(Compiled Code))
at com/itown/iesap/common/BaseService.service(BaseService.java:12(Compiled Code))
jca工具截图:
缩小了问题范围,最终得以排查问题。
发表评论
-
was 8.5环境生成heapdump文件
2016-09-26 10:03 14331、我在/etc/profile里面增加参数: expor ... -
BTrace实际案例分析(转)
2016-03-28 17:09 496BTrace实际案例分析 问题表象 问题描 ... -
BTrace试用
2016-03-28 16:35 1329说明: BTrace是Java进程诊断分析工具,优点是无 ... -
XML节点当做文本处理
2014-10-31 08:45 662XmlHelper类中封装的方法,采用JDOM实现。 ... -
采用JDK自带的类库解析XML(转)
2014-07-01 16:43 38571,需求说明假设要查询一个图书列表,寻找TEST的著作. 2 ... -
玩转 XPath 和缺省命名空间(Default Namespaces)(转)
2014-07-01 16:38 2692诸如“为什么用 XPath 的表达式进行查询,却没有返回所期 ... -
java远程通讯协议对比(转载)
2013-12-25 11:04 1308在分布式服务框架中, ... -
java SPI机制(转)
2013-12-18 08:03 736From ServiceLoader javadoc: A ... -
java编码问题汇总(转载)
2013-12-05 09:20 426工作中经常遇到java编码问题,由于缺乏研究,总是无法给出 ... -
和Lambdas的第一次亲密接触(转载)
2013-05-21 11:18 786英文原文:Java 8: The First Tas ... -
获得javacore和dump文件
2013-02-01 17:31 1361linux环境下,尝试了如下方法获得javacore文件, ... -
查看java class的编译版本
2012-03-31 15:38 926使用 UE 打开 class 文件,第一行内容:0000000 ... -
关于编码的详细分析(转载)
2012-02-27 08:53 849编码无处不在。Database, ... -
集群环境下的单例任务调度基类
2012-02-23 15:37 1343最近为公司框架提供了基于ID的单例的任务调度基类,用于集群的 ... -
JDK 1.5自带的几个小工具
2012-02-23 15:24 1010提供了jps,jmap,jconsole,jstat几个比较实 ... -
使用IBM heapAnalyzer分析内存泄露的原因(转载)
2012-02-23 15:21 3570大家在开发J2EE应用时可能经常碰到OOM的问题。出现这种问题 ... -
关于XML对特殊字符的编码
2012-02-23 15:13 1087项目中遇到这类问题,比如“优褅股份”,采用GBK编码可以,如果 ... -
sys_uuid()导致oracle的session缓慢增长
2012-02-09 10:19 1426最近负责的数据交换平 ... -
NIO技术
2011-12-20 11:12 632复习了一下 nio 技术,发现了一个不错的专题,留个记号: ... -
常用concurrent包下的类图
2011-11-15 16:07 1631摘自:http://www.blogjava.net/xyl ...
相关推荐
帮忙分析javacore和dump文件,查看内存泄漏,线程阻塞,个人觉得很实用,希望可以帮忙到需要的人
jca工具分析死锁及内存情况
javacore.txt文件用jca打开,heapdump.phd文件用ha打开。 Heap dump 文件是一个二进制文件,它保存了某一时刻在 Java 堆中所有对象的状态。这个文件最重要的作用就是分析 Java 堆内存泄露问题,heap analyzer,MAT ...
websphere 内存溢出 javacore分析工具jca456 分析javacore的好工具 分析javacore的好工具
jca15.zip-分析javacore日志的工具。在java内存溢出的时候可以用此工具帮助分析。
websphere 内存溢出 javacore分析工具jca401 分析javacore的好工具 分析javacore的好工具
IBM Thread and Monitor Dump Analyzer for Java 2014年1月最新发布 可以分析weblogic或was当机生成的javacore和dump文件 使用方法在命令行输入 java -Xmx500m -jar jca452.jar
利用Jca工具分析JavaCore文件/Thread dump文件。Jca工具分析JavaCore文件/Thread dump文件。很实用。
websphere在内存溢出的时候会产生javacore文件,分析这个文件可以看出cpu的使用情况。
javacore分析工具,很好的一款图形界面分析工具
websphere javacore与heapdump文件分析工具,jca是javacore分析工具,ha是heapdump分析工具,需要用jdk1.6打开
ibm websphere 服务器内存溢出或其他故障,生成javacore,分析工具
websphere javacore 分析工具 jca412
javacore 最新分析软件jca445.jar
IBM JVM 分析工具,JCA,javaCore查看工具
java线程堆栈分析工具jca466.jar;堆内存分析工具Memory Analyzer;分析内存泄露产生的javacore文件,以便于定位blocked线程
IBM Thread and Monitor Dump Analyzer for Java(简称 jca)。它可以识别Java线程中的挂起,死锁,资源竞争,和瓶颈。 使用方法: java -Xmx1000m -jar jca456.jar