Cpu-Usage
為什麼 linux ’top’ 命令只用一個 CPU 顯示不同的 CPU 使用率值?
為什麼“top”命令會為只有一個 CPU 的 Linux 伺服器顯示兩個不同的值。我知道當有一個多核處理器時它可能會有所不同,但在這種情況下,我使用的是 AWS LightSail 5 美元的實例,只有一個 CPU
512 MB RAM, 1 vCPU, 20 GB SSD
。在 Amazon 控制台中,它顯示 CPU 使用率沒有超過 10% 的使用率,但是應用程序已關閉。當我查看使用情況時,我發現這幾乎是 100% 的使用情況。
為什麼會發生這種情況?我應該考慮哪個值來衡量我的 VM 使用率百分比?
在 Line %Cpu(s) top中,將 CPU 使用率分為幾類:
us, user : time running un-niced user processes sy, system : time running kernel processes ni, nice : time running niced user processes id, idle : time spent in the kernel idle handler wa, IO-wait : time waiting for I/O completion hi : time spent servicing hardware interrupts si : time spent servicing software interrupts st : time stolen from this vm by the hypervisor
您使用的 CPU 由所有這些值加起來組成。這意味著在這種情況下:
7.3 + 0.0 + 0.0 + 4.3 + 0.0 + 0.0 + 88.3 = 99,9
在 Amazon LightSail 中,如另一個答案中所述,“LightSail 不會讓您一直使用 vCPU 的所有功能,因此它已被限制。”
在我看來,這真的不是那麼明顯,應該有一個總 CPU 值在頂部,但遺憾的是,沒有。
您可以使用另一個名為“htop”的程序(將其安裝在伺服器上),它可以更舒適地顯示資訊,例如每個核心的總 CPU 使用率。
它看起來像這樣: