Load Average和CPU使用率的区别

Load Average
是指在运行队列里面的任务数,假如只有1个进程在运行队列里面1分钟,那1分钟的load average就是1;只有1个进程在运行队列里面半分钟,那1分钟的load average就是0.5,意思是在过去1分钟内,运行队列有50%的时间是没有任务的。
处在运行队列里面的进程的状态是R,在Linux中,除了R状态的进程会被计算进load average外,D状态的进程也会被计算进去,D状态的进程就是处于uninterruptable sleep(不可被打断)状态的进程,这些进程可能在等待磁盘IO,网络IO,或者一个系统调用等待内核空间的返回。
还有一点重要的是,进程的线程数是会被当作不同的进程来计算的,假如一个进程产生1000个线程同时运行,那运行队列的长度就是1000,Load Average就是1000。
Load Average和CPU使用率的区别_第1张图片

CPU使用率
是指CPU用于执行任务占用的时间与总的时间的比率,一般看到的指标有:%us, %sy, %ni, %id, %wa, %hi, %si, %st,其中CPU的使用率= (%us + %sy + %ni) = (100% - ) ,这里看到的就是CPU工作的比率了。

Load Average和CPU使用率的区别_第2张图片

Load Average和CPU使用率的区别

你可能感兴趣的:(Linux,运维,linux)