10 分钟教会你看懂 top

作者 : 源头网 2021-07-2 共343人阅读
后端们最怕的事情之一就是服务器的负载突然飙升,这可能又意味着一个个夺目Call马上要打过来了。碰到这种情况怎么办,大家第一反应一定是登陆到服务器上,先敲一个top命令看看Load Average吧。今天这篇文章和大家说说怎么看这个“Load Average”。
Load Average
很多人说Load Average这一个指标就能说明系统负载高了,这句话是对的。那么具体是哪里压力大了呢?这三个数值是怎么计算出来的呢?可能很多人一下子都说不上来。
先来说说定义吧:在一段时间内,CPU正在处理以及等待CPU处理的进程数之和。三个数字分别代表了1分钟,5分钟,15分钟的统计值。
所以,这个数值的确能反应服务器的负载情况。但是,这个数值高了也并不能直接代表这台机器的性能有问题。可能是因为正在进行CPU密集型的计算,也有可能是因为I/O问题导致运行队列堵了。所以,当我们看到这个数值飙升的时候,还得具体问题具体分析。直接升级机器是简单粗暴,但是治标不治本。
top命令一行一行看
top命令输出了很多参数,真正的服务器负载情况我们要综合其他参数一起看。
第一行:
top - 20:41:08 up 18 days, 5:24, 2 users, load average: 0.04, 0.03, 0.05
top:当前时间
up:机器运行了多少时间
users:当前有多少用户
load average:分别是过去1分钟,5分钟,15分钟的负载
具体需要关注的果然还是load average这三个数值。大家都知道,一个CPU在一个时间片里面只能运行一个进程,CPU核数的多少直接影响到这台机器在同时间能运行的进程数。所以一般来说Load Average的数值别超过这台机器的总核数,就基本没啥问题。
第二行:
Tasks: 216 total, 1 running, 215 sleeping, 0 stopped, 0 zombie
Tasks:当前有多少进程
running:正在运行的进程
sleeping:正在休眠的进程
stopped:停止的进程
zombie:僵尸进程
running越多,服务器自然压力越大。
第三行:
%Cpu(s): 0.2 us, 0.1 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
us: 用户进程占CPU的使用率
sy: 系统进程占CPU的使用率
ni: 用户进程空间改变过优先级
id: 空闲CPU占用率
wa: 等待输入输出的CPU时间百分比
hi: 硬件的中断请求
si: 软件的中断请求
st: steal time
这一行代表了CPU的使用情况,us长期过高,表明用户进程占用了大量的CPU时间。us+sy如果长期超过80或者90,可能就代表了CPU性能不足,需要加CPU了。
第四行&第五行
KiB Mem : 65810456 total, 30324416 free, 9862224 used, 25623816 buff/cache
KiB Swap: 7999484 total, 7999484 free, 0 used. 54807988 avail Mem
total:内存总量
free:空闲内存
used:使用的
buffer/cache:写缓存/读缓存
第四第五行分别是内存信息和swap信息。所有程序的运行都是在内存中进行的,所以内存的性能对与服务器来说非常重要。不过当内存的free变少的时候,其实我们并不需要太紧张。真正需要看的是Swap中的used信息。Swap分区是由硬盘提供的交换区,当物理内存不够用的时候,操作系统才会把暂时不用的数据放到Swap中。所以当这个数值变高的时候,说明内存是真的不够用了。
第一行:top - 20:41:08 up 18 days, 5:24, 2 users, load average: 0.04, 0.03, 0.05
top:当前时间
up:机器运行了多少时间
users:当前有多少用户
load average:分别是过去1分钟,5分钟,15分钟的负载
这些就是进程信息了,从这里可以看到哪些进程占用系统资源的概况。
其他命令
top当然是我们最常见的查看系统状况的命令。其他命令还有很多。vmstat,w,uptime ,iostat这些都是常用的命令。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"58588885.com",如遇到无法解压的请联系管理员!
8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
声明如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性
源头网 » 10 分钟教会你看懂 top
背景