1、使用top命令基本信息

us:用户态使用的cpu时间比
sy:系统态使用的cpu时间比
ni:用做nice加权的进程分配的用户态cpu时间比
id:空闲的cpu时间比
wa:cpu等待磁盘写入完成时间
hi:硬中断消耗时间
si:软中断消耗时间
st:虚拟机偷取时间

2、进入命令后可以使用的命令

通过?或者h查看

  Z,B       Global: 'Z' change color mappings【设置颜色】; 'B' disable/enable bold【字体加粗】
l,t,m Toggle Summaries: 'l' load avg【负载】; 't' task/cpu stats【task/cpu汇总】; 'm' mem info【内存】
,I Toggle SMP view: '' single/separate states【负载】; 'I' Irix/Solaris mode f,o . Fields/Columns: 'f' add or remove【展示字段增删】; 'o' change display order【展示字段顺序】
F or O . Select sort field【选择排序字段】
<,> . Move sort field: '<' next col left; '>' next col right【翻页】
R,H . Toggle: 'R' normal/reverse sort【正常、反序】; 'H' show threads【展示线程】
c,i,S . Toggle: 'c' cmd name/line【命令名/整行】; 'i' idle tasks【空闲任务】; 'S' cumulative time【耗时】
x,y . Toggle highlights: 'x' sort field【排序字段高亮】; 'y' running tasks【运行任务】
z,b . Toggle: 'z' color/mono;【颜色】 'b' bold/reverse 【加粗】(only if 'x' or 'y')
u . Show specific user only【用户】
n or # . Set maximum tasks displayed【设置最大展示任务】 k,r Manipulate tasks: 'k' kill【杀 进程】; 'r' renice【重指定】
d or s Set update interval【设置更新间隔】
W Write configuration file【写配置文件】
q Quit【退出】
( commands shown with '.' require a visible task display window )
Press 'h' or '?' for help with Windows,

3、一次CPU 100%处理-java进程

步骤一、找到最耗CPU的进程,打开终端  

  执行top -c ,显示进程运行信息列表

top -c

  键入P (大写p),进程按照CPU使用率排序

步骤二:找到最耗CPU的线程

  显示一个进程的线程运行信息列表

top -Hp 线程id
如:top -Hp 4830

  键入P (大写p),线程按照CPU使用率排序

步骤三:将线程PID转化为16进制

  查看步骤二中,进程内线程具体线程id,如:4831

printf “%x” 

  之所以要转化为16进制,是因为堆栈里,线程id是用16进制表示的。如上述 4831 对应的是 12df

步骤四:查看堆栈,找到线程在干嘛

  工具:pstack/jstack/grep  

jstack 进程id | grep '16进制线程id' -C5 --color

如:

jstack  | grep '0x12df' -C5 --color
  • 打印进程堆栈

  • 通过线程id,过滤得到线程堆栈

找到了耗CPU高的线程对应的线程名称“AsyncLogger-1”,以及看到了该线程正在执行代码的堆栈。进一步分析即可

查看进程端口信息
  netstat -nap |grep 30778
查看进程信息
  ps -ef |grep 30778
杀死进程
  kill -9 30778
检查一下系统最近系统登录信息,看看是否被入侵,使用
  lastlog
列出当前和曾经登入系统的用户信息
  last

006-top查看计算机信息的更多相关文章

  1. 【Linux】通过top语句可以查看压力测试的实时服务器状态。(可以通过百度Linux top查看相关内容)

    Linux实时查看服务器状态的两个语句 1.显示基本服务器监控状态语句如下:linux top 在这里输入 主要先看服务器负载高不高,高了后能否降下来,再看网络,io,数据库状态. 是有一个工具可以监 ...

  2. top查看CPU情况

    Linux查看CPU情况 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要.在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况.运行 top ...

  3. 使用top查看进程和系统负载信息

    引言      使用top命令,可以查看正在运行的进程和系统负载信息,包括cpu负载.内存使用.各个进程所占系统资源等,top可以以一定频率更新这些统计信息.下面我们来学习top命令的具体使用方法. ...

  4. linux top 查看CPU命令

    top 命令主要用于查看进程的相关信息,同时它也会提供查看系统平均负载,cpu 信息和内存信息 实时监控系统资源使用情况 [root@localhost ~]$ top // 动态查看进程使用资源的情 ...

  5. top 查看资源使用

    top:动态观察程序的变化 ? [root@linux ~]# top [-d] | top [-bnp] 参数: -d :后面可以接秒数,就是整个程序画面更新的秒数.预设是 5 秒: -b :以批次 ...

  6. kubectl top查看k8s pod的cpu , memory使用率情况

    To see the pods that use the most cpu and memory you can use the kubectl top command but it doesn’t ...

  7. top查看进程的参数

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不 ...

  8. Top 查看某些或者某个进程(top -p pid)

    https://blog.csdn.net/zhangfn2011/article/details/7488746?utm_source=blogxgwz5

  9. Ubuntu 使用top/free查看内存占用大的原因

    Ubuntu 使用top/free查看内存占用大的原因     linux/ubuntu下free/top查看内存占用大的原因 使用free/top查看内存占用的时候,吓了一大跳,机器4GB的内存,显 ...

随机推荐

  1. 03 js事件循环

    1. js里重要的是事件循环. 参考:https://nodejs.org/en/docs/guides/ 中文版:https://github.com/nodejs/nodejs.org/tree/ ...

  2. Java&Selenium自动化测试之数据驱动

    一.摘要 本片博文以四个方式展示自动化测试的数据驱动,数组.CSV.Excel.Mysql 二.TestNG&Csv&Driven package testNGWithDataDriv ...

  3. python_模块1

    1.将指定的字符串进行加密 # 导入模块 import hashlib def get_md5(data): # 获取hashlib模块中的md5加密算法 obj = hashlib.md5() # ...

  4. SparkStreaming使用checkpoint存在的问题及解决方案

    sparkstreaming关于偏移量的管理 在 Direct DStream初始化的时候,需要指定一个包含每个topic的每个分区的offset用于让Direct DStream从指定位置读取数据. ...

  5. Java冒泡排序,二分查找法

    冒泡排序 int[] arr = {1,7,6,2,8,4}; int temp ; //只需 运行 5次 for (int i = 0; i < arr.length - 1; i++) { ...

  6. np中的温故知新

    1.一维数组中寻找与某个数最近的数 # 一维数组中寻找与某个数最近的数 Z=np.random.uniform(0,1,20) print("随机数组:\n",Z) z=0.5 m ...

  7. ACM-ICPC 2017 沈阳赛区现场赛 G. Infinite Fraction Path && HDU 6223(BFS)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6223 参考题解:https://blog.csdn.net/qq_40482495/article/d ...

  8. 218多校第九场 HDU 6424 (数学)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6424 题意:定义f(A) = log log log log …. (A个log) n ,g[A,B, ...

  9. whatis

    whatis 查看命令的说明文档位置及说明 是从数据库中取查找 手动更新数据库 并不是每个命令都有,

  10. SpringMVC——拦截器,过滤器实现登录拦截

    一.拦截器与过滤器的区别 1.过滤器 依赖于servlet容器.在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次.使用过滤器的目的是用来做一些过滤操 ...