Load Average

简介:

在Linux系统下面,有很多的命令可以查看系统的负载情况:比如top,uptime,w,示例如下:

[wenchao.ren@l-cmsweb1.ops.cn1 ~]$ w
 18:39:10 up 761 days, 13:59,  1 user,  load average: 0.32, 0.45, 0.43
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
wenchao. pts/1    192.168.22.28    17:55    0.00s  0.03s  0.02s sshd: wenchao.ren [priv]

[wenchao.ren@l-cmsweb1.ops.cn1 ~]$ uptime 
 18:39:16 up 761 days, 13:59,  1 user,  load average: 0.29, 0.45, 0.43

[wenchao.ren@l-cmsweb1.ops.cn1 ~]$ top
top - 18:39:19 up 761 days, 13:59,  1 user,  load average: 0.27, 0.44, 0.42
Tasks: 104 total,   1 running, 103 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.1%us,  0.1%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.1%st
Mem:   4194304k total,  4156132k used,    38172k free,   388176k buffers
Swap:  8385920k total,       96k used,  8385824k free,  1608244k cached

我们可以看到无论上面3个命令中的哪个,输出中都包含有load average这一项,他是由3个数字组成。分别代表了:

分别表示系统在过去1分钟、5分钟、15分钟内运行进程队列中的平均进程数量

有关这个运行进程队列,没有等待IO,没有WAIT,没有KILL的进程通通都进这个队列。另外还有一个最直接的显示系统平均负载的命令:

[wenchao.ren@l-cmsweb1.ops.cn1 ~]$ cat /proc/loadavg
0.32 0.35 0.38 1/292 2683

下面对这个命令进行解释:

前3个数字表示平均进程数量,后面的1个分数,分母表示系统进程总数,分子表示正在运行的进程数;最后一个数字表示最近运行的进程ID.

对负载的理解

单核CPU - 单车道 - 数字在0.00-1.00之间正常

0.00-1.00 之间的数字表示情况非常良好,没有拥堵

1.00 表示还算正常,但有可能会恶化并造成拥堵。此时系统已经没有多余的资源了,管理员需要进行优化。

1.00-*** 表示情况不太好了,这种情况你必须进行检查了。

多核CPU - 多车道 - 数字/CPU核数 在0.00-1.00之间正常

多核CPU的话,满负荷状态的数字为 "1.00 * CPU核数",即双核CPU为2.00,四核CPU为4.00。

安全的系统平均负载

一般认为单核负载在0.7以下是安全的,超过0.7就需要进行优化了。

应该看哪一个数字,1分钟,5分钟还是15分钟?

一般认为看5分钟和15分钟的比较好,即后面2个数字。

怎样知道我的CPU是几核呢?

使用以下命令可以直接获得CPU核心数目

grep 'model name' /proc/cpuinfo | wc -l

或者使用:

grep -c 'model name' /proc/cpuinfo

结论

取得CPU核心数目N,观察后面2个数字,用数字/N,如果得到的值小于0.7即可无忧。

参考资料


==============================================================================
本文转自被遗忘的博客园博客,原文链接:http://www.cnblogs.com/rollenholt/p/4057603.html,如需转载请自行联系原作者

相关文章
Apache JMeter 中的 Latency 和 Load Time
Apache JMeter 中的 Latency 和 Load Time
Apache JMeter 中的 Latency 和 Load Time
|
5月前
|
BI
[TOP]load average 负载相关
[TOP]load average 负载相关
20 0
|
7月前
|
机器学习/深度学习 数据采集 数据挖掘
Time Series Data
机器学习中的时间序列数据(Time Series Data)是指按时间顺序排列的数据集,其中每个数据点都包含一个或多个特征值。时间序列数据通常用于预测未来事件、
46 0
|
11月前
|
人工智能 编解码 自动驾驶
YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors
YOLOv7在5 FPS到160 FPS的范围内,在速度和精度方面都超过了所有已知的物体检测器,在GPU V100上以30 FPS或更高的速度在所有已知的实时物体检测器中具有最高的精度56.8% AP。
332 0
|
11月前
|
并行计算 Python
TypeError: can‘t convert CUDA tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory
运行程序,出现报错信息 TypeError: can't convert CUDA tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.。
241 0
|
机器人
GazeboRosControlPlugin::Load 函数详解
GazeboRosControlPlugin::Load 函数详解
GazeboRosControlPlugin::Load 函数详解
成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be
成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be
成功解决ValueError: With n_samples=0, test_size=0.3 and train_size=None, the resulting train set will be
|
前端开发 Go C++
hot load那点事
热加载,最初接触的时候是使用create-react-app的时候,创建一个项目出来,修改一点代码,页面自动刷新了,贫道当时就感叹,这是造福开发者的事情。 再后来编写静态页面的时候使用 VS Code 的插件 Liver Server, 也是及时刷新,平僧幸福感慢慢,什么单不单身,狗不狗的,都不重要了。
157 0
关于Visits, Visitors, Time on Page,www9992019com-Time18122221111 on site, Bounce Rate, Exit Rate, Conversion Rate, Engagement8个重要指标的梳理
Menu 行业动态 每周更新 技术杂谈 关于我们 网站数据分析八大指标 281171 关于网站分析的8个重要指标的梳理,包括Visits, Visitors, Time on Page, Time on site, Bounce Rate, Exit Rate, Conversion Rate, Engagement。
1652 0
|
BI
Five Steps to Becoming a Better Data Analyst
In this post, a data analyst from wangjubao.com, a leading data-marketing firm in China, shares some advice on making better data insights.
1867 0
Five Steps to Becoming a Better Data Analyst