`

Linux下Java线程性能分析

 
阅读更多
1.top命令后,找到java进程对应的pid
  也可以:
          ps -ef | grep java  找到你的java程序的进程id, 定位 pid
          top -Hp $pid
2.shift+h查看单核线程列表,找到占用cpu最多的java线程对应的id
3.将该id用计算器转换成16进制
4.然后执行JDK的jstack得到堆栈信息 jstack -m <pid>
5.在堆栈中查找该16进制线程id对应的线程
6.然后过了一段时间再做一次, 如果发现同一个thread NID 还是停在同一个地方, 基本上可以怀疑是否挂住了(一般只需要查看你业务相关的stack信息就行了).


嗯嗯,发现一个帖子:
http://flysnowxf.iteye.com/blog/1162691
分享到:
评论

相关推荐

    如何提高Linux Java性能的分析

    Java线程堆分析是定位和解决性能问题的有效工具,它提供了关于应用程序线程状态和执行路径的详细信息。 首先,理解Java线程堆的概念至关重要。Java线程堆是Java虚拟机(JVM)运行时的一个快照,它包含了应用程序中...

    JAVA线程dump的分析

    生成JAVA线程dump的方法在不同的操作系统下是不同的,在Windows环境中,可以敲击Ctrl-Break键,在Unix、Linux和MacOS环境中,可以敲击Ctrl-\键或使用“kill -3 ”命令,Pid是关注的JAVA进程号。 在分析JAVA线程dump...

    jProfiler7 java内存分析 linux版本

    jProfiler7作为一个强大的Java性能诊断工具,对于任何Linux环境下的Java开发人员来说都是必备的。熟练掌握其使用,可以有效地提升Java应用程序的性能,减少资源浪费,防止内存泄漏,从而提高整体系统的稳定性和效率...

    Java-Thread-Affinity,将Java线程绑定到给定的内核.zip

    Java线程亲和性(Thread Affinity)是一个高级并发编程概念,主要涉及到操作系统调度和硬件资源的优化。在多核处理器系统中,线程亲和性允许开发者指定某个线程应该运行在哪个特定的处理器核心上,从而提高性能、...

    Java8 Linux版本

    Linux版本的Java 8针对Linux平台进行了优化,确保在该操作系统上的性能和稳定性。 在Linux上安装Java 8 JDK(Java Development Kit 8)是开发者和系统管理员必须掌握的一项技能。首先,你需要访问Oracle官网下载...

    嵌入式linux的Java虚拟机分析与设计

    本篇文章将深入探讨嵌入式Linux环境下Java虚拟机的分析与设计,旨在为读者提供对这一领域的全面理解。 首先,我们来了解嵌入式系统的基本概念。嵌入式系统是指用于特定功能的计算机系统,它们通常被集成到更大的...

    linux java top分析

    获取当前jvm占用CPU的线程, 分析性能问题利器。

    JAVA性能分析

    ### JAVA性能分析 #### 前言 在现代软件开发中,Java因其强大的跨平台能力、丰富的类库支持以及良好的安全特性而被广泛应用于企业级应用和服务端开发中。然而,随着应用程序规模的增长和复杂度的提高,Java应用程序...

    linux 测试环境线程问题解决

    本文将深入解析Linux环境下线程不足的问题,并提供详细的解决方案,确保系统重启后能够生效。 ### 问题背景 当Linux服务器上的应用程序运行时,如果遇到以下错误提示: ``` 2013-11-0716:03:26,592 ERROR ...

    java引起的linux服务器性能问题查找

    ### Java引起的Linux服务器性能问题查找 在现代企业的IT架构中,Java应用十分普遍,而Linux作为最常用的服务器操作系统之一,其稳定性和灵活性受到广泛认可。然而,在实际运行过程中,Java应用可能会导致Linux...

    基于环境的java多线程行为比较分析

    然而,Java多线程的行为表现会受到多种因素的影响,包括处理器数量、操作系统线程机制、Java虚拟机(JVM)特性以及Java线程模式的选择。本文旨在深入探讨这些因素如何影响Java多线程的行为,并提出相应的编程建议。 #...

    Linux下启动JAVA

    为了监控Java应用的性能,可以使用`jps`(Java进程状态)列出运行中的Java进程,`jstat`(JVM统计监测工具)查看JVM的统计信息,`jmap`(内存映射工具)生成堆转储,以及`jhat`(堆分析工具)分析堆转储。...

    linux下查看java进程下线程占用cpu情况

    - `perf` 是Linux下的一个性能分析工具,可以用来分析特定进程或线程的CPU使用情况,包括Java进程。使用 `perf stat -p &lt;进程ID&gt;` 可以查看指定进程的CPU使用统计。 7. **`strace` 命令**: - `strace` 可以跟踪...

    JAVA实现Linux中word转换pdf

    在Java编程环境中,我们可以利用各种库来实现在Linux系统中将Word文档转换为PDF。这个过程通常涉及到对文件格式的理解,以及对操作系统调用的掌握。以下是一个详细的知识点介绍: 1. **Java与Linux交互**: Java...

    java 11下载,版本 11.0.17, linux各版本

    对于Linux用户来说,Java 11的Linux版本是必不可少的,因为Linux是许多服务器和开发环境的首选操作系统。Linux有多种发行版,如Ubuntu、CentOS、Fedora、Debian等,而Java 11的Linux安装包通常可以跨多个发行版通用...

    多线程,java基本知识,linux基本命令操作知识

    在IT行业中,掌握多线程、Java基础以及Linux基本命令操作是至关重要的技能。下面将分别详细介绍这些知识点。 首先,让我们来谈谈“多线程”。多线程是计算机编程中的一个重要概念,特别是在Java这种支持多线程的...

    Linux下海康监控JAVA源码demo

    12. **Linux系统调用**:对于Linux平台,可能需要使用JNI(Java Native Interface)调用C/C++库,实现与Linux系统的深度集成,例如获取设备信息、优化性能等。 13. **Maven或Gradle构建**:现代Java项目通常使用...

    Java性能监控工具

    JProfiler是一款专业的Java性能分析器,它可以深度监控CPU、内存、线程等,并提供详细的报告和优化建议。 在实际使用中,我们可以利用这些工具对Java应用进行监控,比如在Jboss这样的应用服务器中,通过添加特定的...

Global site tag (gtag.js) - Google Analytics