查看服务器中资源的占用对排查一些问题至关重要
top和htop:htop相对于top来说更直观和易操作,可以通过鼠标移动来kill等,并且有颜色标识。
top命令
先来看图
第一行最后一个参数:1|5|15分钟的CPU平均负载信息(uptime
命令也可见)
第二行是进程信息:zombie僵尸进程
第三行是cpu信息:
us: 表示用户态的CPU时间比例
sy:表示内核态的CPU时间比例
ni:运行低优先级进程的CPU时间比例
id:空闲CPU时间比例
wa:处于IO等待的CPU时间比例
hi hard interrupt: 处理硬中断的CPU时间比例
si soft interrupt: 处理软中断的CPU时间比例
st steal:当前系统运行在虚拟机中的时候,被其他虚拟机占用的CPU时间比例
第四行是内存信息:重点说一下buff/cache
两者都是:缓冲区
cache是存在于cpu和内存之间的缓冲区,存放的是从disk上读取到的数据,因为cpu和内存读取速度相差很大,
buff是用于存放要输出到块存储的数据,主要作用是流量整形(将大数量较小规模的I/O整形为平稳小数量较大规模的I/O),以减少io响应
第五行是交换分区信息:
Swap分区是在系统的运行内存不够用的时候,把物理内存中的一部分空间释放出来,以供当前运行的程序使用。
那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中
等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。
两个快捷键:
ctrl+s:屏幕滚动停止
ctrl+q:屏幕滚动继续
PID:进程id
USER:进程所有者
PR:进程的优先级,越小优先级越高
NI:nice值,负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存,单位是kb
RES:进程使用的物理内存,单位kb
SHR:进程使用的共享内存,单位kb
S:进程状态(S表示休眠,R表示正在运行, Z表示僵死状态,N表示该进程优先值为负数,I表示空闲状态)
%CPU:进程占用的CPU使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:进程使用的CPU时间总计,单位1/100秒
COMMAND:命令行
常用的几个内置命令:
h:进入内置命令帮助截面
P:根据进程的CPU占用率来排序
M:根据进程的内存占用率来排序
T:根据进程启用时间来排序
c:显示进程绝对路径
k:杀死进程
输入k之后会让你输入pid,然后输入kill的signal号码,9是强制删除,15是默认的程序自己正常退出
在linux系统中,如果程序运行期间过度到虚拟内存,不管cpu占用的满不满,基本都会感觉到卡顿,这时候就可以用清楚系统缓存的方法解决卡顿问题
sync;sync;sync && swapoff -a && swapon -a
sync命令相当于保存按钮
swapoff -a 将/etc/fstab文件中所有设置为swap的设备关闭
swapon -a 开启…
htop命令
yum install htop -y
下载htop依赖的安装包
yum install epel-release -y
上一步可能报错,执行这个
先来看图
htop方便之处就是可以用鼠标点击
比如需要杀掉一个进程,现将鼠标滚到这个进程上,然后点击kill,然后会让你选择kill命令的sginal值
滑动鼠标或者点击鼠标到对于signal值上然后点击send发送就可以杀掉进行
htop还可以调整进程的nice值,可以说是相当nice!!!