`
JadeLuo
  • 浏览: 425680 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

线上jvm进程CPU load高排查脚本-jkiller

阅读更多
http://www.54chen.com/java-ee/jvm-cpu-load-high-script.html

#!/bin/sh

export LANG="zh_CN.UTF-8";
export LC_ALL="zh_CN.UTF-8";

LOG_FILE="/tmp/jcpu.log";
JSTACK_FILE="/tmp/jstack.log";

PID="$1";
shift;
i=0;
j="$1";
if [ -z "${j}" ]; then
    j=5;
fi

ps -mp ${PID} -o THREAD,tid,time | sort -rn > ${LOG_FILE};
jstack ${PID} > ${JSTACK_FILE};

for LINE in `cat ${LOG_FILE}|gawk -F '-' '{print $4}'|gawk -F ' ' '{print $1}'`
do
    i=$(($i+1));
    if (($i>$j)); then
        break;
    fi;
    XPID=`printf "%x\n" ${LINE}`;
    echo -ne "\033[32m";
    echo ${XPID};
    echo -e "\033[34m";
    grep -A 10 "0x${XPID}" ${JSTACK_FILE};
    echo -e "\e[0m";
done;

 

分享到:
评论

相关推荐

    JVM调优总结 -Xms -Xmx -Xmn -Xss

    JVM调优总结 -Xms -Xmx -Xmn -Xss JVM 调优是 Java virtual machine 的性能优化,通过调整 JVM 的参数来提高 Java 应用程序的性能。其中,-Xms、-Xmx、-Xmn、-Xss 是四个重要的参数,分别控制 JVM 的初始堆大小、...

    SWT64位( Cannot load 32-bit SWT libraries on 64-bit JVM)完美解决

    把原来的swt.jar替换成这个就能解决 Cannot load 32-bit SWT libraries on 64-bit JVM问题

    nginx-upstream-jvm-route-1.15

    【标题】"nginx-upstream-jvm-route-1.15" 涉及的核心知识点是Nginx的upstream模块与JVM路由的整合,特别针对Nginx 1.15版本。这个项目旨在解决在配置Nginx时遇到的特定错误提示“nginx: [emerg] invalid parameter ...

    线上adplatform集群机器cpu飙升问题排查总结.docx

    在排查线上adplatform集群机器CPU飙升问题时,我们首先需要了解JVM的性能优化策略。JVM的性能优化主要涉及到三个方面:堆空间分配、垃圾回收和堆栈空间分配。 * 堆空间分配:JVM的堆空间分配是指JVM为对象分配内存...

    swt.jar 64-bit 解决Cannot load 32-bit SWT libraries on 64-bit JVM

    完美解决Cannot load 32-bit SWT libraries on 64-bit JVM问题

    jvm基础知识与调优-jvm-training.zip

    这个“jvm-training”资料包涵盖了JVM的核心概念、内存管理、垃圾回收机制、性能优化等方面的知识。 1. **JVM架构** - 类加载器:JVM通过类加载器将.class文件加载到内存,分为引导类加载器、扩展类加载器和应用...

    JVM调优的测试项目-JVM-subject.zip

    这个名为"JVM-subject-master"的项目,很可能是包含了一系列的测试用例、脚本和分析报告,用于模拟不同的工作负载,帮助开发者实践和理解上述的JVM调优知识点。通过深入研究和实践这个项目,可以提升我们的JVM调优...

    查看jvm进程的cpu火焰图工具

    4. **生成火焰图**:采样结束后,运行`async-profiler -p [pid] stop`并指定输出文件,例如`./flamegraph.pl --title='JVM CPU Usage' <profiler_output> > flamegraph.svg`,这将使用flamegraph脚本生成SVG图像。...

    JVM的调优总结----------

    ### JVM调优总结 #### 1. JVM配置 在Java应用程序的运行过程中,JVM(Java虚拟机)扮演着至关重要的角色。为了确保应用程序能够高效稳定地运行,正确配置JVM参数至关重要。以下是一些常见的JVM配置参数及其含义: ...

    JVM调优总结 Xms -Xmx -Xmn -Xss

    ### JVM调优总结:Xms、Xmx、Xmn、Xss 在Java虚拟机(JVM)的运行过程中,合理的参数配置对于提高程序性能至关重要。本文将对JVM调优中的几个关键参数进行深入解析,包括-Xms、-Xmx、-Xmn和-Xss等,帮助开发者更好...

    框架->java语言->jvm->os->汇编->硬件

    标题 "框架->java语言->jvm->os->汇编->硬件" 描述了一条技术学习路径,从上至下深入理解软件开发的核心技术栈。这个路径涵盖了从应用框架到底层硬件的关键环节,让我们逐步解析其中涉及的知识点: 1. **框架**:...

    用于测试jvm gc调优-share-jvm-gc.zip

    "用于测试jvm gc调优-share-jvm-gc.zip"这个压缩包文件很可能包含了一些工具、脚本或教程,用于帮助我们了解和实践JVM的垃圾收集优化。 首先,我们需要理解JVM GC的基本原理。垃圾收集器的主要任务是识别并回收不再...

    nginx-upstream-jvm-route 和 nginx 对应版本,亲测可用

    此资源有两个文件,含 nginx-upstream-jvm-route 和 nginx 对应版本,都是tar.gz文件。 安装方法网上很多就不写了,亲测可用。 不用担心版本不匹配造成安装失败,再浪费积分去到处下载尝试的烦恼。 此资源有两个文件...

    kotlinx-coroutines-io-jvm-0.1.1.jar

    kotlinx-coroutines-io-jvm-0.1.1.jar

    mini-jvm in rust实现jvm,jvm-rs-main.zip

    项目名为"jvm-rs-main",通过这个项目,我们可以深入学习Rust语言与JVM的交互,以及如何构建一个简化版的JVM。 一、Rust语言的魅力 Rust是一种系统级编程语言,它强调安全、并发和速度。它的内存管理模型避免了空...

    CPU 高消耗排查

    ### CPU高消耗排查知识点 #### 一、CPU高消耗概览 CPU高消耗是指系统或应用程序在运行过程中占用大量的CPU资源,导致系统响应变慢甚至出现卡顿的现象。这种问题通常会影响系统的整体性能和用户体验。因此,对于运维...

    JVM性能优化相关问题-面试-进阶

    Java虚拟机(JVM)性能优化是Java开发者面临的重要任务之一,特别是在面试和高级技能提升时,理解JVM的工作机制至关重要。本文将深入探讨JVM类加载过程、JVM加载Class文件的原理以及Java内存分配。 1. **JVM类加载...

    show-busy-java-threads-jvm-cpu.rar

    总之,`show-busy-java-threads.sh` 是一个非常实用的工具,对于排查JVM高CPU使用率的问题非常有帮助。开发者可以通过这个脚本,结合日志和代码分析,快速定位并解决问题,提高Java应用的性能和稳定性。在日常开发和...

    jvm性能调优-jvm内存模型和优化-performance-jvm-memorymodel-optimize.zip

    《JVM性能调优:深入理解JVM内存模型与优化》 在Java开发中,JVM(Java Virtual Machine)性能调优是提升应用程序效率的关键环节。JVM内存模型的理解和优化,对于解决性能瓶颈、避免内存泄漏以及提高系统稳定性至关...

Global site tag (gtag.js) - Google Analytics