负载平均:哲学?


2

让我们假设我在一家公司工作,这家公司只拥有一台服务器。在每个月末,我的老板进入我的办公室并问我:“我们需要新的CPU吗?”。我们还要说,根据经验,如果使用超过70%的“系统资源”,公司需要新的CPU。当我输入lscpu时

fabi@alien-linux:~$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
...

所以我计算

X = (Nr of CPUs)*(Nr of sockets)*(Nr of cores per socket)*(Threads per core)

在我的情况下是84。为简单起见,假设我在整个月内以非常高的采样率执行“top”并且不断显示

 50.0 50.0 50.0

这意味着,平均而言,50个进程实际上由核心处理,等待处理或处于“UNINTERRUPTABLE”状态。很好,我计算

0.7 * 84 = 58.8

所以这意味着“70%的系统资源= 58.8个进程”。

由于我只有50个进程,我可以回答“不”给我的老板,我们不需要新的硬件。

这是我的问题:

它是否正确?

这里已经提出这个问题,答案是这个计算不正确。我不懂为什么...

最好的祝福,

FW


这是一套过于简单的指标来回答手头的问题。在确定硬件需求时,还需要评估其他许多其他有意义的指标。
弗兰克托马斯

你能详细说明一下这个吗?只是为了让我开始
Fabian Werner

你必须看看你的应用程序和你的能力。即使在高峰时段,您支持的应用程序也能为您的用户实现最佳运行吗?ram的使用情况如何在一天内波动,你等待存储访问多长时间,存储增长是否在预期之内等等
Frank Thomas

是的,但所有这些都指的是与CPU使用不同的东西。
Fabian Werner

没有关于“我们需要新硬件吗?”的问题。表示固定在CPU上。
弗兰克托马斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.