目录
2.按1键可查看系统上每个 CPU 内核的图形表示。反复按1以评估 CPU 内核的内核统计信息编辑
引言:怎么使用top进行优化
一、top简介
当我检查 Linux 系统(或者甚至对运行其他操作系统的计算机进行故障排除)时,我经常使用 top 命令来检查系统的 RAM 和 CPU 占用率。它为我提供了评估计算机整体健康状况的信息。我在 Linux 之旅的早期就了解了 top 命令,并依靠它让我快速了解服务器或其他 Linux 系统(包括 Raspberry Pi)上正在发生的事情。但 top 命令远比人们看到的要复杂得多。根据其手册页,top 程序提供了正在运行的系统的动态实时视图。它可以显示系统摘要信息以及当前由 Linux 内核管理的进程或线程列表。
二:启动TOP
1.第一行含义
top:当前系统时间
up:系统已经运行的时间
users:当前登录用户
load average:系统平均负载 每1分钟 5分钟 15分钟
2.第二行含义
total:进程总数
running:正在运行的进程
sleeping:处于睡眠的进程
stopped:终止的进程数
zombie:僵尸进程数
3.第三行含义
%cpu(s):cpu占用
us:用户空间占用cpu%
sy:内核空间占用cpu%
ni:用户进程空间内改变优先级的进程占用cpu%
id:空闲cpu%
wa:等待输入输出的cpu时间%
hi:硬中断占用
si:软中断占用
st:虚拟化占用
4.第四行含义
KiB Mem:内存占用
total:物理内存总量
free:空闲内存总量
used:已使用的物理内存总量
buff/cache:内核缓存的内存量
5.第五行含义
KiB Swap:交换空间占用
total:交换区总量
free:空闲交换区总量
used:已使用的交换区总量
avail Mem:缓冲的交换区总
6.第六行含义
PID:进程id
USER:进程所有者的用户名
PR:优先级
NI:谦让度值。负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量,单位kb
RES:进程使用的物理内存大小,单位kb
SHR:共享内存大小,单位kb
S:进程状态
%CPU:上次更新到现在的CPU时间占用百分比
%MEM:进程使用的物理内存百分比
TIME+:进程使用的CPU时间总计,单位1/100秒
COMMAND :命令名/命令行
三:top常用按键
1.按z键更改输出的颜色。我发现这让输出更容易被眼睛看到
2.按1键可查看系统上每个 CPU 内核的图形表示。反复按1以评估 CPU 内核的内核统计信息
3.P 键:根据CPU使用百分比大小进行排序
4.M 键:根据驻留内存大小进行排序
四、案例
1.获取要监控的本地服务器ip地址
ifconfig | grep inet | grep -vE 'inet6|127.0.0.1' | awk '{print $2}'
2.获取用户空间占用CPU百分比
top -b -n 1 | grep Cpu | awk '{print $2}' | cut -f 1 -d "%"
3.获取内核空间占用CPU百分比
top -b -n 1 | grep Cpu | awk '{print $4}' | cut -f 1 -d "%"
4.获取空闲CPU百分比
top -b -n 1 |grep "%Cpu" |awk -F" " '{print $8}'
5.获取等待输入输出占CPU百分比
5获取等待输入输出占CPU百分比
6.用stress进行压力测试
stress --cpu 2 --timeout 600
对2个cpu增压,持续时间600s