首頁  >  文章  >  後端開發  >  php-fpm佔用記憶體太大怎麼辦

php-fpm佔用記憶體太大怎麼辦

王林
王林原創
2021-09-17 16:39:424749瀏覽

php-fpm佔用記憶體太大的解決方法:將pm.min_spare_servers和pm.max_spare_servers設定在合理範圍,確保進程數會不斷變動即可。

php-fpm佔用記憶體太大怎麼辦

本文操作環境:windows10系統、PHP7、thinkpad t480電腦。

解決php-fpm佔用記憶體過大問題的方法如下所示:

方法一:調整管理模式

static管理模式適合比較大記憶體的伺服器,而dynamic則適合小記憶體的伺服器,你可以設定一個pm.min_spare_servers和pm.max_spare_servers合理範圍,這樣進程數就會不斷變動。 ondemand模式則更適合微小內存,例如512MB或256MB內存,以及對可用性要求不高的環境。

方法二:減少php-fpm行程數

如果你的VPS主機的記憶體被佔用耗盡,可以檢查一下你的php-fpm行程數,依照php-fpm行程數=內存/2/30來計算,1GB內存適合的php-fpm進程數為10-20之間,具體還得根據你的PHP加載的附加組件有關係。

php-fpm配置範例

這裡以1GB記憶體的VPS配置php-fpm為演示,實際操作來看設定數值還得根據伺服器本身的效能、PHP等綜合考慮。

pm = dynamic #dynamic和ondemand适合小内存。
pm.max_children = 15 #static模式下生效,dynamic不生效。
pm.start_servers = 8 #dynamic模式下开机的进程数量。
pm.min_spare_servers = 6 #dynamic模式下最小php-fpm进程数量。
pm.max_spare_servers = 15 #dynamic模式下最大php-fpm进程数量。

推薦學習:php訓練

#

以上是php-fpm佔用記憶體太大怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn