导读 对于新手来说,可能各种进程管理工具用的还不算熟悉,那么遇见Linux系统CPU系统使用率过高怎么办?那么就学习一下吧。

查看CPU使用

在 Linux 系统下,使用 top 命令查看 CPU 使用情况。

%Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

CPU各类型占用详解:

  • us(user):表示 CPU 在用户运行的时间百分比,通常用户 CPU 高表示有应用程序比较繁忙。典型的用户程序有:数据库、Web 服务器等。
  • sy(sys):表示 CPU 在内核态运行的时间百分比(不包括中断),通常内核态 CPU 越低越好,否则表示系统存在某些瓶颈。
  • ni(nice):表示用 nice 修正进程优先级的用户进程执行的 CPU 时间。nice 是一个进程优先级的修正值,如果进程通过它修改了优先级,则会单独统计 CPU 开销。
  • id(idle):表示 CPU 处于空闲态的时间占比,此时,CPU 会执行一个特定的虚拟进程,名为 System Idle Process。
  • wa(iowait):表示 CPU 在等待 I/O 操作完成所花费的时间,通常该指标越低越好,否则表示 I/O 存在瓶颈,可以用 iostat 等命令做进一步分析。
  • hi(hardirq):表示 CPU 处理硬中断所花费的时间。硬中断是由外设硬件(如键盘控制器、硬件传感器等)发出的,需要有中断控制器参与,特点是快速执行。
  • si(softirq):表示 CPU 处理软中断所花费的时间。软中断是由软件程序(如网络收发、定时调度等)发出的中断信号,特点是延迟执行。
  • st(steal):表示 CPU 被其他虚拟机占用的时间,仅出现在多虚拟机场景。如果该指标过高,可以检查下宿主机或其他虚拟机是否异常。

排查用户 CPU 使用率高

用户 CPU 使用率反映了应用程序的繁忙程度,通常与我们自己写的代码息息相关。
操作步骤:
1)、通过 top 命令找到 CPU 消耗最多的进程号;

2)、通过 top -Hp 进程号命令找到 CPU 消耗最多的线程号(列名仍然为 PID);

3)、通过printf "%x\n" 线程号命令输出该线程号对应的 16 进制数字;

4)、PID进程在内核调用情况。如果是Java应用可通过 jstack 进程号 | grep 16进制线程号 -A 10 命令找到 CPU 消耗最多的线程方法堆栈。

非 Java 应用可使用 perf查看:

perf top -p 7574

如果提示perf: command not found,使用yum install perf安装。

perf是Linux 2.6+内核中的一个工具,在内核源码包中的位置 tools/perf。
perf利用Linux的trace特性,可以用于实时跟踪,统计event计数(perf stat);或者使用采样(perf record),报告(perf report|script|annotate)的使用方式进行诊断。Linux就该这么学

遇见Linux系统CPU使用率过高怎么办?相关推荐

  1. linux服务器 cpu使用率过高,服务器CPU使用率过高排查与解决思路

    发现服务器的cpu使用率特别高 排查思路: -使用top或者mpstat查看cpu的使用情况 mpstat -P ALL 2 1 Linux 2.6.32-358.el6.x86_64 (linux- ...

  2. Linux 系统 CPU 使用率简单分析

    CPU 使用率是单位时间内 CPU 使用情况的统计,以百分比的方式展示. CPU 使用率 为了维护 CPU 时间,Linux 通过事先定义的节拍率(内核中表示为 HZ),触发时间中断,并使用全局变量 ...

  3. (小技巧) 如何让Linux 机器CPU使用率变高

    由于测试需要,需要让机器的cpu使用率变高. 单行命令搞定 for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc ...

  4. Linux下CPU使用率过高的排查方法

    在 Linux 系统下,使用 top 命令查看 CPU 使用情况. %Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, ...

  5. Linux服务器CPU使用率过高

    前言 服务器使用率过高,导致,请求报错 分析 通过阿里云分析: 通过Linux命令查看原因 top 通过 top -Hp 进程号命令找到 CPU 消耗最多的线程号(列名仍然为 PID): top -H ...

  6. Linux服务器CPU使用率过高排查与解决思路

    日常工作中有时候会遇到Linux服务器上出现CPU负载过高的情况,影响程序的运行,一般的排除思路如下: 方法一: 使用top命令 然后按shift+p按照CPU排序,找到占用CPU过高的进程的pid ...

  7. linux环境CPU使用率过高问题定位

    1. 找到cpu占用最高的进程id 通过top命令查看占用最高的进程id 2. 定位到对应java程序 ps -ef | grep 进程pid(或者 jps -l | grep 进程pid) 3. 定 ...

  8. linux杀掉cpu使用率高的进程,如何解决Linux中CPU使用率高的问题?

    电脑死机了?还是开始听到电脑发出很响的CPU风扇噪音?Linux中CPU使用率过高的原因很多,但最常见的原因是运行异常的应用程序.本文介绍了如何在Linux中解决CPU使用率过高的问题. 找出罪魁祸首 ...

  9. linux应用系统使用率,Linux性能优化实战:系统CPU使用率高,但为啥找不到高的应用(06)...

    一.环境准备 1.安装软件包 终端1 机器配置:2 CPU,8GB 内存 预先安装 docker.sysstat.perf等工具 1 [root@luoahong ~]#docker -v 2 Doc ...

  10. linux下java多线程_Linux系统下Java问题排查——cpu使用率过高或多线程锁问题

    原标题:Linux系统下Java问题排查--cpu使用率过高或多线程锁问题 一个系统.特别是多线程并发的后台系统,在某些特定场景下,可能触发系统中的bug:导致cpu一直居高不下.进程hang了或处理 ...

最新文章

  1. Oracle profile 用户资源限制 说明
  2. OC中简单的界面设置
  3. java 线程池原理分析
  4. 河源市计算机组装竞赛,计算机组装大赛决赛圆满结束
  5. 前端学习(1848)vue之电商管理系统电商系统的开发模式和技术选型
  6. Python 为何能成最强编程语言?!
  7. Oracle数据库基础知识(二)
  8. 2019一注结构成绩_2019年福建地区计算机考研汇总分析
  9. 375.猜数字大小II
  10. python2和python3 print_新手学习Python2和Python3中print不同的用法
  11. 《C++ SYNTAX》第1章 基础知识
  12. 成大事,赚大钱,都要有股永不服输的精神
  13. android仿微信拍摄视频教程,仿微信视频拍摄UI, 基于ffmpeg的视频录制编辑(上)
  14. matlab plot fplot函数
  15. python爬取二级页面_爬虫代码改进(二)|多页抓取与二级页面
  16. 串行DAC——基于小梅哥AC620
  17. 不是所有电子签名都具备法律效力
  18. python3简明教程第二版答案_python入门简明教程?求最新的python简明教程,最好是python3的...
  19. XCode下Object C和C++混合编译
  20. ❤️软件设计师之程序设计语言与语言处理程序基础“小总结”(莽起来)❤️

热门文章

  1. execute immediate 用法详解
  2. html网页图片下方空隙太大,div+css排版图片IMG下边界有空隙
  3. android 置灰不可点击,Android全局实现控件变灰
  4. 计算机管理 灰色,详解电脑任务管理器变成灰色不可用的解决方法
  5. 快来带您了解中秋节的前世今生
  6. 7-4 韩信点兵 (10 分)
  7. android studio实现记住密码,Andriod Studio实现保存QQ密码功能(案例代码详解)
  8. 12C新特性--Application Continuity
  9. 简单的创建一个小型服务器
  10. 网易云/QQ音乐导入Apple Music