jstack 结果查看】的更多相关文章

背景: 最近在做项目系统的异常测试,项目依赖于nkv,需要模拟依赖组件nkv异常时系统的响应及性能情况.通过tc工具模拟当服务器发送到nkv的请求超时时系统的响应.发现接口返回错误率100%,查看服务器日志报大量线程池已满,想要通过工具看下线程情况,由此简单学习了jstack. WARN AbortPolicyWithReport - [DUBBO] Thread pool is EXHAUSTED! Thread Name: DubboServerHandler-10.165.185.170:…
介绍 jstack是java虚拟机自带的一种堆栈跟踪工具.jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式: jstack [-l] pid 主要分为两个功能: a.  针对活着的进程做本地的或远程的线程dump: b.  针对core文件做线程dump. jstack用于生成java虚拟机当前时刻的线程快照.线程快照是当前jav…
演示代码 public class StackTest { public static void main(String[] args) { Thread thread = new Thread(new Worker()); thread.start(); } static class Worker implements Runnable { @Override public void run() { while (true) { /* try { Thread.sleep(2000); } c…
首先可以用jstack -l pid >sample.dump把java进程的运行栈dump出来. 还可以用grep java.lang.Thread.State sample.dump | awk '{print $2}' | sort -n | uniq -c 来看看进程中都有哪些线程状态. -- :: Full thread dump Java HotSpot(TM) -Bit Server VM (+-LTS mixed mode): Threads class SMR info: _j…
笔记: 1.top命令找出最高占用的进程(command为java) 2.查看高负载进程下的高负载线程:top -Hp [PID] (或 ps -mp PID -o THREAD,tid,time) 3.找出最高占用的线程并记录thread_id,把线程号 进行换算成16进制编号:printf "%X\n" thread_id 4.(可选)执行查看高负载的线程名称:jstack 16143[进程] | grep 3fb6[线程] 5.导出进程的堆栈日志,找到3fb6 这个线程号:jst…
命令 jps 查看进程id jstack 1234 查看该进程的线程堆栈信息 对于每个线程,都有如下信息: 线程名,如“main”线程属性(如果是Daemon线程,会有Daemon标识,否则,什么都没有)线程优先级,priojava线程对应的本地线程的优先级os_prijava线程标识tidjava线程对应的本地线程标识nid线程状态(运行中.等待等)线程的栈信息线程锁信息…
文章同步发布于github博客地址,阅读效果更佳,欢迎品尝 运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole.大名鼎鼎的VisualVM,IBM的Memory Analyzer等等,但是在生产环境出现问题的时候,一方面工具的使用会有所限制,另一方面喜欢装X的我们,总喜欢在出现问题的时候在终端输入一些命令来解决.所有的工具几乎都是依赖于jdk的接口和底层的这些命令,研究这些命令的使用也让我们更能了解jvm构成和特性…
目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk工具之jstack(Java Stack Trace) 四.jdk工具之jstat命令(Java Virtual Machine Statistics Monitoring Tool) 五.jdk工具之jmap(java memory map). mat之四--结合mat对内存泄露的分析 六.jdk…
功能   用于生成虚拟机当前时刻的线程快照(一般称为threaddump或javacore文件).线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,如线程间死锁.死循环.请求外部资源导致的长时间等待等都是导致线程长时间停顿的常见原因.线程出现停顿的时候通过jstack来查看各个线程的调用堆栈,就可以知道没有响应的线程到底在后台做些什么事情,或者等待着什么资源.   示例     说明   -F:当正常输出的请求不被响应时,强制输出线…
给一个系统定位问题的时候,知识.经验是关键基础,数据是依据,工具才是运用知识处理数据的手段 使用适当的虚拟机监控和分析的工具可以加快我们分析数据.定位解决问题的速度,本文主要介绍了几款服 务器上常用的命令行工具(jps.jstat.jinfo.jmap.jhat.jstack),先祭出大神图片镇楼: jps:虚拟机进程状况工具 jps(JVM Process Status Tool)除了名字像UNIX的ps命令之外,它的功能也和ps命令类似,可以列出正在运行的虚拟机进程, 并显示虚拟机执行主类.…