服务器CPU高居不下,JAVA线程占用如何排查

news2024/10/6 8:30:45

1. 查看占用cpu占用过高进程的pid

  • 使用 top名称查看
    在这里插入图片描述
  • 这里可以看的出来进程是20943

2. 查看该进程中哪个线程占用大量 CPU

ps -mp 20943 -o THREAD,tid,time  | grep $(ps -mp 20943 -o THREAD,tid,time |awk 'NR>2 {print $2}'|sort -nr|head -1)|head -1
root      1.0  19    - futex_    -      - 20956 00:01:19

3. 将线程ID转换成16进制

printf "%x\n" 20956
51dc

4. 使用 jstack命令,查看线程转储信息

jstack 20943 | grep 51dc -A 10 -B 10
        at org.apache.catalina.core.StandardServer.await(StandardServer.java:453)
        at org.apache.catalina.startup.Catalina.await(Catalina.java:777)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:723)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:321)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:455)

"VM Thread" os_prio=0 tid=0x00007fba7c078800 nid=0x51dc runnable

"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00007fba7c01f800 nid=0x51d4 runnable

"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00007fba7c021000 nid=0x51d5 runnable

"GC task thread#2 (ParallelGC)" os_prio=0 tid=0x00007fba7c023000 nid=0x51d6 runnable

"GC task thread#3 (ParallelGC)" os_prio=0 tid=0x00007fba7c024800 nid=0x51d7 runnable

"VM Periodic Task Thread" os_prio=0 tid=0x00007fba7c2a0800 nid=0x5217 waiting on condition

#假如有问题可以从这里面信息查看问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1206634.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Fourier分析导论——第5章——实数据R上的Fourier变换(E.M. Stein R. Shakarchi)

第5章 实数域ℝ上的Fourier变换 The theory of Fourier series and integrals has always had major difficulties and necessitated a large math- ematical apparatus in dealing with questions of con- vergence. It engendered the development of methods of summa…

arcgis--浮点型栅格数据转整型

利用【Spatial Analyst工具】-【数学】-【转为整型】工具,将浮点型数据转为整型。如下: 【转为整型】对话框参数设计如下: 转换结果如下:

聚焦车用AI算力,奕行智能EVAS完成超亿元Pre-A+轮融资并即将推出端侧算力芯片产品

近日,奕行智能科技(广州)有限公司(以下简称:“奕行智能”)完成超亿元人民币Pre-A轮融资。本轮融资由广州南沙科金控股集团有限公司下属广州南沙区南金基金管理有限公司作为领投方,东南亚最大的金…

【反编译系列】二、反编译 .pyc 文件(uncompyle6)

文章目录 【反编译系列】二、反编译 .pyc 文件(uncompyle6)1. 介绍2. 反编译Reference 【反编译系列】二、反编译 .pyc 文件(uncompyle6) 1. 介绍 .pyc 文件是 Python 将 .py 源代码编译后生成的字节码文件,主要有以下几个特点和…

【java进阶】Java中线程的实现方式

🌈键盘敲烂,年薪30万🌈 线程的四种实现方式: 1. 继承Thread类 2. 实现Runnable接口 3. 实现Collable接口 4. 线程池获取线程 1. 继承Thread类 💧优点: 简单易懂,适用于简单的线程需求。直接…

Python开源项目VQFR——人脸重建(Face Restoration),模糊清晰、划痕修复及黑白上色的实践

Python Anaconda 的安装等请参阅: Python开源项目CodeFormer——人脸重建(Face Restoration),模糊清晰、划痕修复及黑白上色的实践https://blog.csdn.net/beijinghorn/article/details/134334021 VQFR也是 腾讯 LAB 的作品&…

无代码:解决非程序员的开发难题

最近,有个小型企业的负责人找上我,说他公司需要一个内部管理系统,来提高工作和协作效率,但他没有编程经验,也不打算花费大量时间和金钱雇佣专业的开发团队,他问我有没有什么解决方案。 针对这个问题&#…

臀部筋膜炎怎么治疗最有效

臀部筋膜炎的主要症状包括以下几点: 一、筋膜炎发生时会导致臀部疼痛以及局部红肿的情况。 二、可能会引起臀部活动受限。 三、可能会导致患者不能取坐位,因为坐位时可能由于局部压迫而引起筋膜炎疼痛症状加重,而引起患者不能取坐位的情况…

酷开科技丨酷开系统,带你进入惊喜不断的影视世界!

随着科技的迅速发展,智能电视已经成为家庭娱乐的重要组成部分。而要说到智能电视,就不得不提到酷开系统,作为一款智能电视操作系统,酷开系统以其独特的功能和出色的使用体验,让观众们看到了到惊喜不断的影视世界。 如…

智慧渔业捕捞计数项目设计书

(一)项目背景 根据捕捞水域的不同,我国水产捕捞可划分为海洋捕捞、远洋捕捞以及淡水捕捞三大类型。其中,淡水渔业主要是指在淡水水域进行捕捞、养殖以获得淡水水产品并对这些水产品进行加工的社会生产领域。 近年来,随…

AERMOD模型配置方法

数值模式模拟是分析大气污染物时空分布和成分贡献的重要工具,利用模拟结果可以分析大气污染的来源、成因、污染程度、持续时间、主要成分、相对贡献等问题,有助于分析并合理控制污染源排放,为产业调整提供参考。当前,针对不同理论…

Unity Meta Quest 一体机开发(五):手势抓取概述

文章目录 📕教程说明📕 Oculus Integration 中的三种手势抓取方式⭐Hand Grab⭐Touch Hand Grab⭐Distance Hand Grab 此教程相关的详细教案,文档,思维导图和工程文件会放入 Seed XR 社区。这是一个高质量知识星球 XR 社区&#…

稳定扩散与潜伏扩散:哪个更好?

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 3D数字孪生场景编辑器 本文对这两种类型的扩散、它们的工作原理、差异和未来影响进行了详细讨论。 了解稳定扩散 通过稳定扩散生成的图像 Stable Diffu…

[数据结构大作业]HBU 河北大学校园导航

校园导航实验报告 问题描述: 以我校为例,设计一个校园导航系统,主要为来访的客人提供信息查询。系统有两类登陆账号,一类是游客,使用该系统方便校内路线查询;一类是管理员,可以使用该系统查询…

经典文献阅读之--Fast and Robust Ground Surface Estimation...(均匀B样条采样快速估计地平面)

0. 简介 对于激光雷达的地面估计分割,目前其实有很多方法做了快速并鲁棒的分割,比如说我们之前写的一篇《经典文献阅读之–FEC》一文中就给出了快速分割的方案,当中第一步就是需要对地面进行分割。而我们这次看的是一篇使用均匀B样条的方法来…

“纯真·诗心—韩玉臣油画艺术与欧洲油画珍藏展”在京开幕

11月4日,由中国艺术研究院油画院、河北省美术家协会共同主办的“纯真诗心——韩玉臣油画艺术与欧洲油画珍藏展”在中国艺术研究院油画院开幕 中国文化人物记者 苏晴/摄影报道 中国美术家协会名誉主席、中央美术学院原院长靳尚谊致辞 中国艺术研究院原院长连辑致辞 …

域名怎么注册?一步步教你如何注册自己的域名

在互联网时代,网站是个人或企业展示品牌形象和推广品牌的重要工具,而无论是个人还是企业,在建设网站时,都需要提前注册域名。那么域名应该怎么注册呢?从域名选择,到选择域名注册商,再到域名注册…

段的概念_重定位的引入

段的概念 代码段、只读数据段、可读可写数据段、BSS段。 char g_Char A; //可读可写,不能放在ROM上,应该放在RAM里 const char g_Char2 B; //只读变量,可以放在ROM上 int g_A 0; //初始值为0,没有必要浪费空间 int g_B; //没…

容器size()无符号数导致的for循环崩溃

1.问题描述 容器size()无符号数导致的for循环崩溃 for (int index 0; index < static_cast(intVec.size())-1; index) { printf(“%d”,intVec[index]); } 如果不做强转&#xff0c;可能会有两个问题&#xff1a; &#xff08;1&#xff09;编译不过 &#xff08;2&#x…