
答案1
我不確定發生了什麼,但我的猜測是,單一進程的 %CPU 列並沒有告訴您您認為它告訴您的內容。從頂部的線上說明頁:
k: %CPU -- CPU usage
The task’s share of the elapsed CPU time since the last screen update,
expressed as a percentage of total CPU time.
假設您每 4 秒刷新一次。這 2 秒內消耗的總 CPU 時間為 6%在這4秒內。但假設其中某一秒,它突然使用了 24% 的 CPU 時間。我並不是說這種情況正在發生,但它可能會發生。
我對top
這裡很滿意。我可以看到 CPU 使用率按 CPU 細分,並進一步按user
, sys
, nice
, idle
, wait
(在 I/O 上)細分,為硬體和軟體中斷提供服務(嗨,si)。你也許htop
也可以把這個放進去。只要您有 1 個 CPU 至少有 20% 空閒,就沒有什麼可真正擔心的,除非您的風扇困擾您。但如果您擔心,可能發生的情況是 %wait 和 %hi/%si 非常高,在這種情況下,沒有單一進程的 CPU 使用率很高,而是核心由於某種原因非常繁忙。
答案2
我遇到了類似的問題,我確實在後台運行了 TOP 命令並將其重定向到 txt 文件
頂部 > 頂部.txt &
謝謝 可以看看哪個行程浪費了你的CPU
答案3
有幾種選擇。我的偏好是該程式htop
通常不會預設安裝,但幾乎可用於所有發行版。它為您提供相同的信息,top
但具有更豐富的功能集。它非常適合以互動方式尋找問題流程,但不適合編寫腳本。如果您想將某些內容合併到監控腳本中,那麼該命令ps -eo pid,pcpu,comm
將是您的朋友。它以相當容易解析的格式列印所有當前進程及其 PID 和 CPU 使用情況。
答案4
可能出什麼問題了?
首先,你使用的是 Laravel,它需要大量內存,而你只有不到一半的內存。您在不受支援的作業系統上運行它 - 這很糟糕。您還沒有告訴我們該堆疊的其餘部分(Web 伺服器、PHP SAPI、PHP 版本)。