幾個月前,在與共享托管平臺的低性能作斗爭后,我們將我們的電子商務網站遷移到了 VPS。為了應對流量的增加(平均每天 300-500 名訪客),我們調整了 PHP-FPM 設置并將 Max Children 從 5(默認)增加到 50。目前,PHP-FPM“池”進程需要高 CPU 使用率(30-40%)。有什么技巧可以使這些“池”進程使用更少的 CPU?謝謝!VPS 規格:2 個 CPUIntel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz4GB RAMWHM:Centos 7.8 v86.0.18電商平臺:OpenCart 3.0.2.0
1 回答

慕桂英546537
TA貢獻1848條經驗 獲得超10個贊
FPM 與 CPU 使用率無關,它是您的代碼。
也就是說,不要在沒有可靠依據的情況下隨意更改工作進程的數量,例如:實際資源統計信息。
每天有 300-500 個用戶,除非你做一些奇怪的事情,否則你真的不太可能有 50 個并發請求。
我目前工作的地方高峰時大約有 600 個并發用戶,最多 15-20 個連接實際上同時做任何事情。[注意:更大/更廣泛的支持基礎設施]
你真的希望每個 CPU 內核同時處理 25 個請求嗎?
你能合理地將 50 個請求的 RAM 放入 4GB 中嗎?
您是否同意這 50 個空閑的 PHP 進程,每個進程消耗 10-15MB RAM?
話雖如此,我們無法告訴您代碼中的哪些內容正在耗盡資源,而且您也無法發布足夠的信息讓我們只能做出模糊的猜測。您需要采取適當的措施來衡量資源使用發生的位置,分析您的代碼以找出原因,并調整您的基礎設施配置以適應您的特定應用程序需求。
沒有一種適用于所有人的“神奇”配置。
- 1 回答
- 0 關注
- 216 瀏覽
添加回答
舉報
0/150
提交
取消