平均负载

发现系统变慢,执行top或者uptime命令,来了解系统的负载情况
 
每列的含义:
11:28:54 当前时间
up 650 days,17:35 系统运行时间
2 users 正在登录的用户数
 
最后load average三个数字分别表示,过去的1分钟、5分钟、15分钟的平均负载
 
平均负载:单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数,它和cpu使用率没有直接关系
 
可运行状态进程:正在使用cpu或者正在等待cpu的进程,ps命令看到的处于R的进程
 
不可中断状态进程:处于内核态关键流程汇总的进程,并且这些流程是不可打断的,比如等待硬件设备的io响应,ps命令中看到的D状态
不可中断状态实际上是系统对进程和硬件设备的一种保护机制
 
简单理解平均负载就是平均活跃进程数,最理想的就是每个cpu上刚好运行一个进程,这样每个cpu都得到了充分利用,即平均负载最理想的情况就是等于cpu的个数
 
首先看下系统有多少个cpu
 
有个cpu个数,可以知道,当平均负载比cpu个数还大的时候,系统就已经出现了过载
当平均负载高于cpu数量70%的时候,就应该排查负载高的问题了,一旦负载高,就可能导致进程响应变慢,今儿影响服务的正常功能
 
注意点:
1、平均负载高有可能是cpu密集型进程导致的
2、平均负载高并不一定代表cpu使用率高,还有可能是io更繁忙了
3、当发现负载高的时候,你可以使用mpstat pidstat等工具,辅助分析负载的来源

猜你喜欢

转载自www.cnblogs.com/weiluoyan/p/10482876.html