快速定位消耗CPU的Java线程

标签: 消耗 cpu java | 发表时间:2012-12-01 00:00 | 作者:advincenting
出处:http://www.blogjava.net
思路:

1.通过快递定位消耗CPU的线程。

    工具: Window 平台 通过 Processor  explorer 获得线程ID 
    Linux 通过 top -H 获得

2. 然后通过Thread dump 获得java 所有线程 搜索到相应的线程ID 定位该线程
    可以通过 Java 内置的jvisualvm  或者Jstack


Window上具体步骤可参考我的另一个blog 
https://blogs.oracle.com/vincent/entry/identify_high_cpu_consumed_thread

经过长久等待终于申请到了公司的个人Blog 在此祝贺一下。



本文链接

相关 [消耗 cpu java] 推荐:

快速定位消耗CPU的Java线程

- - BlogJava_首页
1.通过快递定位消耗CPU的线程.     工具: Window 平台 通过 Processor  explorer 获得线程ID .     Linux 通过 top -H 获得. 然后通过Thread dump 获得java 所有线程 搜索到相应的线程ID 定位该线程.     可以通过 Java 内置的jvisualvm  或者Jstack.

从Java视角理解CPU缓存(CPU Cache)

- - 淘宝网通用产品团队博客
从Java视角理解系统结构连载, 关注我的微博( 链接)了解最新动态众所周知, CPU是计算机的大脑, 它负责执行程序的指令; 内存负责存数据, 包括程序自身数据. 同样大家都知道, 内存比CPU慢很多. 其实在30年前, CPU的频率和内存总线的频率在同一个级别, 访问内存只比访问CPU寄存器慢一点儿.

Java定位CPU使用100%的方法

- cong - 龙浩的blog
流程:把线程dump出来,然后分析. 1:Threaddump的方法:. jvisualvm中来thread dump.  对应的线程id是十进制的,需要转换为十六进制的在threaddump文件中才可以看到. 找到对应的线程,把相关的方法找出来,可以精确到代码的行号,自己修改相关源码来fix bug.

写Java也得了解CPU缓存

- - 忘我的追寻
CPU,一般认为写C/C++的才需要了解,写高级语言的(Java/C#/pathon…)并不需要了解那么底层的东西. 我一开始也是这么想的,但直到碰到LMAX的 Disruptor,以及 马丁的博文,才发现写Java的,更加不能忽视CPU. 经过一段时间的阅读,希望总结一下自己的阅读后的感悟. 本文主要谈谈CPU缓存对Java编程的影响,不涉及具体CPU缓存的机制和实现.

java在CPU中的一些个破事

- - ImportNew
还是那句话,貌似java和CPU没有多少关系,我们现在来聊聊有啥关系;. 这三个步骤来完成,从这点你也能看出i++为什么能实现先做其他的事情再自我加1,因为它讲值赋予给了另一个变量. 2、我们要用到多线程并发一致性,就需要用到锁的机制,目前类似Atomic*的东西基本可以满足这些要求,内部提供了很多unsafe类的方法,通过不断对比绝对可见性的数据来保证获取的数据是最新的;接下来我们继续来说一些CPU其他的事情.

通过top命令抓取cpu高消耗的sql

- - 行业应用 - ITeye博客
top命令在linux环境维护中很实用,虽然功能缺失不够sar那么全面. 今天和大家分享一个通过top命令来抓取性能sql的案例. 通过top命令抓取了如下的信息.  pid是3585的进程对应的sql 之前已经确定是性能问题导致的了,所以先放过,可以看看pid是8879的这个进程,出现的不是很“稳定”.

从Java视角理解CPU上下文切换(Context Switch)

- - 淘宝网通用产品团队博客
从Java视角理解系统结构连载, 关注我的微博( 链接)了解最新动态在高性能编程时,经常接触到多线程. 起初我们的理解是, 多个线程并行地执行总比单个线程要快, 就像多个人一起干活总比一个人干要快. 然而实际情况是, 多线程之间需要竞争IO设备, 或者竞争锁资源,导致往往执行速度还不如单个线程. 在这里有一个经常提及的概念就是: 上下文切换(Context Switch).

JAVA获取计算机CPU、硬盘、主板、网络等信息

- - 编程语言 - ITeye博客
l转[ http://www.cnblogs.com/jifeng/archive/2012/05/16/2503519.html]. 通过使用第三方开源jar包sigar.jar我们可以获得本地的信息. 1.下载sigar.jar. 2.按照主页上的说明解压包后将相应的文件copy到java路径.

Linux下java进程CPU占用率高-分析方法

- - Linux - 操作系统 - ITeye博客
今天登陆同事的一台gateway 开始以为hive环境登陆不了了,仔细一看看了下是因为机器很卡,我每次等几秒没登陆就ctrl+c了,看了下是有个java进程cpu:340.4%  mem:14.6%. 一般解决方法是通过top命令找出消耗资源高的线程id,利用strace命令查看该线程所有系统调用.

java问题导致linux负载、cpu过高如何定位

- - CSDN博客推荐文章
1.用top找到最耗资源的进程id. 2.查询最消耗资源的java进程. 3.打印java 栈 信息. 4.将耗资源的javaPID转换为16进制(5920转1720<16进制>  去百度找 :十进制转十六进制). PID 对应 堆栈中的nid(16进制). 去stack.txt 中查找nid=1720的问题.