Linux/Unix 1. Find the Java/Tomcat process id. % ps ax | grep java You should see output like this 17207 ?        Sl    78:36 /usr/java/default/bin/java -Djava.util.logging.config.file=/usr/tomcat/tomcat6/conf/logging.properties -Djava.util.logging.m…
一.dump基本概念 主要用于故障定位(尤其是out of memory)和性能分析.主要记录了JVM运行期间的内存占用.线程执行等情况,这就是常说的dump文件.常用的有heap dump和thread dump(也叫javacore,或java dump). heap dump记录内存信息的 thread dump是记录CPU信息的. 1.1.heap dump: heap dump文件是一个二进制文件,保存了某一时刻JVM堆中对象使用情况.HeapDump文件是指定时刻的Java堆栈的快照…
性能分析之-- JAVA Thread Dump 分析综述       一.Thread Dump介绍 1.1什么是Thread Dump? Thread Dump是非常有用的诊断Java应用问题的工具.每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同,但是大多都提供了当前活动线程的快照,及JVM中所有Java线程的堆栈跟踪信息,堆栈信息一般包含完整的类名及所执行的方法,如果可能的话还有源代码的行数.…
Java and Thread 一个 web 服务器使用几十到几百个线程来处理大量并发用户,如果一个或多个线程使用相同的资源,线程之间的竞争就不可避免了,并且有时候可能会发生死锁. Thread contention 是一个线程等待锁的一个状态,这个锁被另外一个线程持有,等待被释放,不同的线程频繁访问 WEB 应用的共享资源.例如,记录一条日志,线程尝试记录日志之前必须先获取锁来访问共享资源. 死锁是线程竞争的一个特殊状态,一个或是多个线程在等待其他线程完成它们的任务为了完成它们自己的任务. 线…
最近在做性能测试,需要对线程堆栈进行分析,在网上收集了一些资料,学习完后,将相关知识整理在一起,输出文章如下. 一.Thread Dump介绍 1.1什么是Thread Dump? Thread Dump是非常有用的诊断Java应用问题的工具.每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同,但是大多都提供了当前活动线程的快照,及JVM中所有Java线程的堆栈跟踪信息,堆栈信息一般包含完整的类名及所执…
当系统性能出现问题时,需要从各个方面来查看网络环境.主机资源.查看最经变更的代码等.如果是想从代码层面解决问题,那么最有效的方法就是查看相关dump文件.如果是使用IBM JDK(我默认你是在aix环境下),那么可以使用kill -3 “进程号”,这种恐吓的方式来生成dump文件.可以用IBM提供的工具jca.jar来查看Thread dump文件.利用IBM 提供的heap分析工具.javacore文件(关于cpu的)和heapdump文件(关于内存的) tips:IBM jdk1.6下没有j…
Thread Dump 和Java应用诊断 Thread Dump是非常有用的诊断Java应用问题的工具,每一个Java虚拟机都有及时生成显示所有线程在某一点状态的thread-dump的能力.虽然各个Java虚拟机thread dump打印输出格式上略微有一些不同,但是Thread dumps出来的信息包含线程:线程的运行状态.标识和调用的堆栈:调用的堆栈包含完整的类名,所执行的方法,如果可能的话还有源代码的行数. Thread Dump特点: ?能在各种操作系统下使用 ?能在各种Java应用…
一.dump基本概念 在故障定位(尤其是out of memory)和性能分析的时候,经常会用到一些文件来帮助我们排除代码问题.这些文件记录了JVM运行期间的内存占用.线程执行等情况,这就是我们常说的dump文件.常用的有heap dump和thread dump(也叫javacore,或java dump).我们可以这么理解:heap dump记录内存信息的,thread dump是记录CPU信息的. heap dump: heap dump文件是一个二进制文件,它保存了某一时刻JVM堆中对象…
一.概念: 在进行java应用故障分析时,经常需要分析内存和cpu信息,也就说所谓的heap dump 和 thread dump heap dump: heap dump文件是一个二进制文件,需要工具heap analyze打卡查看,主要查看那些占用了太多堆栈空间的内存信息. thread dump: 文本文件,记录进行具体的运行信息,可以看到在那一点那一行所耗时最多,如数据库查询,长页面等,可以通过分析多个文件,查找发现问题的共同点来确认代码所在问题点. 二.利用JDK自带工具获取threa…
一.Thread Dump介绍 1.1什么是Thread Dump? Thread Dump是非常有用的诊断Java应用问题的工具.每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力,虽然各个 Java虚拟机打印的thread dump略有不同,但是大多都提供了当前活动线程的快照,及JVM中所有Java线程的堆栈跟踪信息,堆栈信息一般包含完整的类名及所执行的方法,如果可能的话还有源代码的行数. 1.2 Thread Dump特点 1. 能在各种操作系统下使用 2.…