问题分析:

1.程序属于CPU密集型,和开发沟通过,排除此类情况。

2.程序代码有问题,出现死循环,可能性极大。

解决过程:

1.根据top命令,发现PID为2633的Java进程占用CPU高达300%,出现故障。

2.找到该进程后,如何定位具体线程或代码呢,首先显示线程列表,并按照CPU占用高的线程排序:

[root@localhost logs]# ps -mp 2633 -o THREAD,tid,time | sort -rn

显示结果如下:

USER     %CPU PRI SCNT WCHAN  USER SYSTEM   TID     TIME

root     10.5  19    – –         –      –  3626 00:12:48

root     10.1  19    – –         –      –  3593 00:12:16

找到了耗时最高的线程3626,占用CPU时间有12分钟了!

将需要的线程ID转换为16进制格式:

[root@localhost logs]# printf “%x\n” 3626

e18

最后打印线程的堆栈信息:

[root@localhost logs]# jstack 2633 |grep e18 -A 30

将输出的信息发给开发人员进行确认,这样就能找出有问题的代码。

java 进程 cpu占用_JAVA进程CPU占用高的故障排查 – 运维那些事相关推荐

  1. java gc占用cpu问题_Java进程占用CPU高的问题跟踪

    http://www.cublog.cn/u/12331/showart_255325.htmlWebLogic高cpu消耗诊断一例故障分析报告故障描述2007-3-6日上午,在系统监控时发现WebL ...

  2. java的进程和线程_java进程和线程区别与不同

    java进程和线程区别与不同. 一.定义 1.进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位. 2.线程是进程的一个实体,是CPU调度和分派的基本 ...

  3. linux非root用户查看cpu,Linux查看物理CPU个数、核数、逻辑CPU个数 – 运维那些事...

    CPU总核数 = 物理CPU个数 * 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数 查看CPU信息(型号) [root@AAA ~]# cat /p ...

  4. 哈罗python的学费多少-哈啰出行招聘Java、算法、大数据开发、安卓、iOS、运维架构专家/高级专家等...

    简历请发hanlongjie05932@hellobike.com 资深IOS开发工程师 工作职责: 1.负责IOS平台应用产品的研发工作: 2.负责根据产品需求完成模块设计.编码.编码集成工作: 3 ...

  5. java进程老挂掉_Java进程突然挂掉排查分析手记(jvm bug)

    故障:11.56 Zabbix收到告警,系统业务一个java进程挂了,今日正好值班遇到,做个分析手记,可以供大家参考. 排查1:查看系统资源情况 主要发现此刻CPU均突然增长,swap内存也有所增长但 ...

  6. java进程老挂掉_JAVA进程突然挂掉

    JVM内存不足导致进程死掉. Native memory allocation (mmap) failed to map 一台服务器上部署很多JAVA进程已经是微服务的常态,但也有些坑. 背景,测试服 ...

  7. java进程老挂掉_JAVA进程突然挂掉 - 1024菜bird的个人空间 - OSCHINA - 中文开源技术交流社区...

    JVM内存不足导致进程死掉. Native memory allocation (mmap) failed to map 一台服务器上部署很多JAVA进程已经是微服务的常态,但也有些坑. 背景,测试服 ...

  8. java内存模型 原子性_Java内存模型JMM 高并发原子性可见性有序性简介 多线程中篇(十)...

    JVM运行时内存结构回顾 在JVM相关的介绍中,有说到JAVA运行时的内存结构,简单回顾下 整体结构如下图所示,大致分为五大块 而对于方法区中的数据,是属于所有线程共享的数据结构 而对于虚拟机栈中数据 ...

  9. java多线程死锁代码_java多线程死锁 编写高质量代码:改善Java程序的151个建议...

    java多线程死锁 编写高质量代码:改善Java程序的151个建议 第1章 Java开发中的通用方法和准则 建议1:不要在常量和变量中出现易混淆的字母 建议2:莫让常量蜕变成变量 建议3:三元操作符的 ...

最新文章

  1. Page与Loaded
  2. 1.Tomcat配置
  3. 在Anaconda中实现多版本Python共存
  4. 高项近5套选择题知识点思维导图
  5. spring5.0学习笔记8
  6. [数位dp][状压dp] Jzoj P3458 密码
  7. 数仓建模—主数据管理
  8. echarts折线图和柱状图结合绘制
  9. 数据安全治理方法导论
  10. 常用24位颜色表转换成16位颜色值,让16位lcd使用
  11. 一款JavaScript 混淆(Obfuscator)工具(Tool)的研究(六)更新
  12. Android apk签名
  13. 利用Python删除Android项目中未使用的layout
  14. PCL学习笔记一入门(更新中)
  15. x86_64 gnu/linux,linux版本信息以及x86与x86_64的差别
  16. Elasticsearch实现类百度搜索引擎搜索功能ES5.5.0v
  17. IntelliJ IDEA 2018.3 安装、永久破解及新特性说明
  18. 一位沪漂 11 年的程序员老兵,回老家了!
  19. 关于mysql彻底卸除问题
  20. python闭包,自由变量

热门文章

  1. 一统江湖的大前端(7)React.js-从开发者到工程师
  2. 2017二级计算机考试题,2017计算机二级考试MSOffice真题练习及答案
  3. 韩顺平php视频笔记36 php基本语法
  4. 高等组合学笔记(六): 第二类Stirling数,第一类Stirling数以及生成函数
  5. poj 1611 TheSuspects 并查集 连通图
  6. 数字图像处理 中值滤波 MATLAB实验
  7. IDEA打包发布jar包
  8. 给HUSTOJ用户提供的源码阅读与修改建议
  9. ES6语法---set
  10. ai字体素材网站_综合网站大全,字体、设计、图片各种素材管够,资源丰富你懂得...