Linux系统加载中的奇怪值

Linux系统加载中的奇怪值,第1张

概述我试图了解一个 Linux服务器上的系统负载: $正常运行时间  15:01:45上升52天,19:48,1位用户,平均负载:0.63,1.76,4.81 负载总是1分钟<1分钟. 5分钟< 15分钟. 分销商ID:RedHatEnterpriseServer  发布:5.8 我每秒钟捕获正常运行时间约30分钟,并且总是报告1分钟平均值低于5分钟和15分钟.根据我对系统负载值的理解,这是不可能的. 我试图了解一个 Linux服务器上的系统负载:

$正常运行时间
15:01:45上升52天,19:48,1位用户,平均负载:0.63,1.76,4.81

负载总是1分钟<1分钟. 5分钟< 15分钟. 分销商ID:RedHatEnterpriseServer
发布:5.8

我每秒钟捕获正常运行时间约30分钟,并且总是报告1分钟平均值低于5分钟和15分钟.根据我对系统负载值的理解,这是不可能的.似乎报告了更高的数字,并增加了一些常数.

这怎么可能,这是什么意思?

@H_502_13@解决方法 我认为你可能误解了“平均负载”是如何工作的.
首先它不是系统“加载”它的系统“负载平均值” – 由于数字都是平均值(意味着跨越多个记录和时间),因此存在很大差异!此外,了解系统上cpu的数量非常重要,因为这将影响如何解释数字(注意当天和年龄的核心).

另请注意,您不能将这些数字用作“cpu使用率”,就像从windows等中了解的那样.它们是平均值,基于进程等待时间和cpu使用情况.

正如您自己写的那样,负载平均数可以描述如下.

(请注意我不使用>也不使用<因为我认为它可能会产生误导.)
>在最后1分钟
>在最后5分钟
>在过去的15分钟

让我们对我的小型双cpu(核心)系统进行测试.

我运行命令“stress -c 1”到最大输出1 cpu(核心)并让它运行5,10,30分钟(cpu使用时间可能更少,因此数字略有偏差).

这就是我的负载平均值的样子.

5 MIN - load average: 1,00,71,3710 MIN - load average: 1,02,94,5930 MIN - load average: 1,01,1,03,98

那么数字是什么意思呢?假设它在双cpu(核心)系统上你可以取第一个数字1,00并告诉我们系统使用了50%,因为我们知道它有两个cpu因此如果数量是2,00那么我们在哪里使用系统100%,十进制数字告诉你进程等待的过载.

>在过去1分钟内:计算机平均超载0%,平均使用一个完全使用的cpu. Aka在正常的cpu负载条件下使用50%的系统.

等等.让我们进行相同的运行,但是两个cpu都处于负载状态并添加一个额外的孩子试图获取资源.在这种情况下,我试图使用超过我的系统可以处理.

在短短3分钟内,我的负荷已经在尖叫着我!现在我不打算让它运行更长时间,因为它是一个小型路由器,可以更轻松地测试负载,所以它变得越来越热:)

3 MIN - load average: 2,48,99,74

现在让我们拿1分钟平均数2,48.这告诉我们什么呢?
我们正在使用248%的系统,我们知道我们可以使用两个cpu(200%),因此系统超载48%意味着0.48进程平均等待cpu使用时间,因为两个cpu完全忙.但如果这是一个4 cpu(核心)系统,那么数字就会很好,因为我们只使用了50%的系统.

我希望这一切都是有意义的,同样的分布之间可能会有很小的变化,他们的内核如何解释平均负载,但不像你想的那样.这是内核查看进程处于什么状态的方式.如cpu_IDle,cpu_waiting,io_waiting等.所以NFS fs可以让io等进程等待.我不认为RedHat做了什么特别的事情.

编辑:如果要查看系统上的整体cpu使用率,可能需要使用命令“top”. top还显示了平均负载.

总结

以上是内存溢出为你收集整理的Linux系统加载中的奇怪值全部内容,希望文章能够帮你解决Linux系统加载中的奇怪值所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1039200.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存