为什么80%的码农都做不了架构师?>>>   

死锁检测方法

1 JConsole 找到需要查看的进程,打开线程选项卡,点击检测死锁

2 jps查看java进程ID,使用jstack  7412输出信息

3 使用jvisualvm连接java虚拟机,查看线程检测死锁

解决方法:

  四个条件打破一个即可,但是代价不同,最简单的编码就是顺序加锁和解锁

现在我们介绍下如何避免死锁的几个常见方法。《java变发编程的艺术》

  • 避免一个线程同时获取多个锁。
  • 避免一个线程在锁内同时占用多个资源,尽量保证每个锁只占用一个资源。
  • 尝试使用定时锁,使用tryLock(timeout)来替代使用内部锁机制。
  • 对于数据库锁,加锁和解锁必须在一个数据库连接里,否则会出现解锁失败。

检测CPU使用过高:http://flysnowxf.iteye.com/blog/1162691

  TOP找出Cpu使用高的进程,这里我们分析21125这个java进程。

  先输入top -p 21125,然后再按shift+h。这里意思为只查看21125的进程,并且显示线程。

  jstack查找这个线程的信息

Java自带的性能监测工具用法简介——jstack、jconsole、jinfo、jmap、jdb、jsta、jvisualvm

http://blog.csdn.net/feihong247/article/details/7874063#

jstack

jstack 是一个可以返回在应用程序上运行的各种各样线程的一个完整转储的实用程序,您可以使用它查明问题。jstack [-l] <pid>,jpid可以通过使用jps命令来查看当前Java程序的jpid值,-l是可选参数,它可以显示线程阻塞/死锁情况。

转载于:https://my.oschina.net/sbcagf/blog/783076

java 性能检测工具 检测死锁等相关推荐

  1. 开源java性能分析工具_Java性能监控:您应该知道的5个开源工具

    开源java性能分析工具 鲜为人知但有用:开源应用程序性能监视的状态 对于任何应用程序来说,最重要的事情之一就是性能. 我们要确保用户获得他们能获得的最佳体验,并想知道我们的应用已启动并正在运行. 这 ...

  2. 超好用的自带火焰图的 Java 性能分析工具 Async-profiler 了解一下

    如果你经常遇到 Java 线上性能问题束手无策,看着线上服务 CPU 飙升一筹莫展,发现内存不断泄露满脸茫然.别慌,这里有一款低开销.自带火焰图.让你大呼好用的 Java 性能分析工具 - async ...

  3. Java 性能分析工具 , 第 3 部分: Java Mission Control

    引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...

  4. 后端:推荐九款Java 性能优化工具,你都用过吗?

    今天给大家一起看一下9个可以帮助我们优化Java性能的工具. 1.NetBeans Profiler NetBeans profiler是一个NetBeans IDE插件,主要为NetBeans ID ...

  5. Java 性能分析工具一览(JDK自带)

    Jdk自带的监控程序 1. jstat 分析JVM HEAP占用情况 2. jps 查看JVM 进程 3. jmap 分析内存对象占用情况 4. jstack 查看JVM 调用堆栈情况 5. hppr ...

  6. java性能分析工具_java性能分析工具

    如何利用 JConsole观察分析Java程序的运行,进行排错调优 http://jiajun.iteye.com/blog/810150 如何使用JVisualVM进行性能分析 http://jia ...

  7. 5款Java性能分析工具的对比

    在给客户的应用程序维护的过程中,我注意到在高负载下的一些性能问题.理论上,增加对应用程序的负载会使性能等比率的下降.然而,我认为性能下降的比率远远高于负载的增加.我也发现,性能可以通过改变应用程序的逻 ...

  8. 阿里巴巴 Java性能诊断工具Arthas

    Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load.内存.gc.线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参.异常,监测方法执行耗时 ...

  9. java c 性能分析工具_Jprofiler使用介绍--java性能分析工具中文帮助

    1.说明 改善Java服务器的性能需要模拟负载下的服务器.创建一个模拟环境.搜集数据并且分析结果可能是对许多开发人员的挑战.这里介绍了使用JProfiler跟踪分析Java服务器的性能. 简单的性能问 ...

最新文章

  1. mysql.data.dll win10_关于Linux和Windows下部署mysql.data.dll的注册问题》
  2. 机器学习性能优化全解
  3. 基于DDD的.NET开发框架 - ABP初探
  4. 百度地图应用开发(一)
  5. kail利用msf工具对ms17-010(永恒之蓝)漏洞入侵渗透Win7
  6. linux网卡名称乱编,小斗CentOS7.x网卡名称错乱、及网卡启动失败。
  7. Nginx(零):背景
  8. 使用Python scikit-learn 库实现神经网络算法
  9. console线驱动安装_文通证件识别SDK和驱动安装使用说明
  10. 读取速度500m/s和1000m/s的硬盘,装系统使用起来有区别吗?
  11. MongoDB 备份与恢复
  12. 新视觉在线制作网总汇模块代码(4例)
  13. python用turtle画彩虹_Python利用turtle库绘制彩虹代码示例
  14. 灵遁者哲学书籍《 重构世界》:意识是物质逆熵存在的本征
  15. php利用phpqrcode生成二维码,并将二维码盖在一张图上实现美化
  16. Java代码实现点赞功能
  17. linux安装globalsign证书,globalsign代码签名证书
  18. 在Mac实现自动切换输入法
  19. My thoughts through a robot's eyes: An augmented reality-brain–machine interface
  20. python学习 之 笔记一

热门文章

  1. 阿里开源新一代人机对话模型 ESIM,曾创下人机对话准确率新纪录
  2. 吴恩达深度学习(53)-Batch Norm 为什么奏效?
  3. SAP MM盘点流程里如何处理事务代码MI11 Recount过的盘点凭证?
  4. SAP 会计凭证和物料凭证的关系
  5. python读写excel(合并单元格)
  6. from __future__ import absolute_import, division, print_function
  7. 波士顿动力的仓库机器人Strentch来了,挑战每小时搬运800个箱子
  8. 自动驾驶出行,进入下半场
  9. 「对抗深度强化学习」是如何解决自动驾驶汽车系统中的「安全性」问题的?...
  10. 北京大学纳家勇治研究组在《美国国家科学院院刊》发文阐明时序记忆的神经机制