为什么我的 AWS T2.Medium EC2 CPU 利用率恒定为 27%,但运行 top 命令时显示 100%?

为什么我的 AWS T2.Medium EC2 CPU 利用率恒定为 27%,但运行 top 命令时显示 100%?

我通过 Laravel Forge 在 AWS EC2 实例 (T2.Medium,2 核) 中运行我的 PHP Laravel 应用程序。连续 5 个月,我在 AWS 控制台图表中看到 CPU 利用率始终为 27%。因此,我尝试通过运行“top”命令进行检查,结果看到 CPU 为 100%。

所以我想了解:

1. What is my actual CPU utilization out of the 2 cores of T2.medium?
2. In the top command result, forge is utilizing 100% CPU, what is the best way to track what cause the high CPU so that I can lower the CPU utilization.

请注意,此 EC2 实例是应用服务器。对于数据库,我使用另一个实例。它没有任何高 CPU 利用率。

AWS CPU 利用率图表 TOP 命令结果 CPU 积分使用情况 CPU 信用余额

答案1

top显示 %CPU 的百分比单身的核心。因此有时您可能会看到它超过 100 的数字。如果您运行,cat /proc/cpuinfo您应该会看到每个可用核心的条目。因此,CPU 列中的 100% 仅表示它正在使用整个核心 - 如果实例有 4 个核心(或 2 个具有超线程的核心),则总共只有 25%。

我喜欢使用,htop因为我认为它具有更好的可视化和显示效果。

相关内容