关于CPU使用率的问题

关于CPU使用率的问题

CPU 使用情况有多差/正常/良好?

Cpu0  : 14.4%us,  6.3%sy,  0.0%ni, 78.8%id,  0.0%wa,  0.0%hi,  0.5%si,  0.0%st
Cpu1  : 88.3%us,  8.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  3.7%si,  0.0%st

我们每隔一段时间就会从特定服务器组(处理我们应用程序最重要的部分)收到范围在 (80-88%) 之间的 CPU 使用率警报。我通常不会对它们采取行动,因为我发现大部分使用都在空间中%us。我将其视为系统健康高效运转的标志。我正在给我们的团队写一封电子邮件,试图解释我们什么时候应该恐慌,什么时候不应该关注这些 CPU 警报?我的问题是:

公平地说,只要 和%wa%sy太高,%us 列中使用率高的 CPU 表明系统健康,而不是拥挤的系统。

是不是认为CPU使用率95%​​只要是在%us列服务器就不是问题呢?

如果服务器的 CPU 使用率为 88% %us,我是否认为最有可能需要在应用程序中进行调整?同样,88% 的使用率不会影响性能,因此是否最好就这样保留并接受我们的应用程序高度 CPU 限制的事实?

该特定服务器在 RHEL 6.5 上运行,并且运行的java进程大多数时候超过 800 个线程。

答案1

这似乎确实是您应该自己回答的问题:在机器正常运行一段时间(例如一周)时保留统计数据,这将使您了解正常运行的参数应该是什么。

您的快照显示您或多或少地最大化了两个核心之一。由于您的主进程是多线程的,这可能意味着如果需要的话,它仍然有更多的 CPU 可供占用。

至于85%或95%的用户是否“太高”,这对于操作系统来说并不是真正的问题,不是。我相信如果这导致CPU过热,这只是硬件问题。显然,在给定时间段内使用某物越多,发生故障的可能性就越大,但这并不意味着更频繁的使用会导致故障。打个比方:您可以每天行驶 1000 公里,您的汽车在 13 周后以约 100 000 公里的速度抛锚,或者您可以每天行驶 100 公里,您的汽车在 2 年后以约 100 000 公里的速度抛锚。在计算机中,核心硬件(存储和内存除外)更有可能首先过时,我不认为它特别容易因使用而磨损。

WRT 用户与系统时间,过多的系统时间可能表明外围硬件出现故障。这可能会出现峰值,并希望在系统日志中伴随错误消息。至于多少算太多,大多数时候应该主要是用户自己的问题。同样,保存一周的统计数据应该可以帮助您确定这一点。

相关内容