1宵统、查看php-fpm的進程個數(shù)
ps -fe |grep "php-fpm"|grep "pool"|wc -l
2、查看每個php-fpm占用的內(nèi)存大小
ps -ylC php-fpm --sort:rss
3覆获、查看單個php-fpm進程消耗內(nèi)存的明細
pmap $(pgrep php-cgi | head -1)
這里可以根據(jù)需要減少不必要的模塊加載马澈。
php-fpm的參數(shù)優(yōu)化
pm = dynamic #對于專用服務(wù)器,pm可以設(shè)置為static弄息。#如何控制子進程痊班,選項有static和dynamic。如果選擇static摹量,則由pm.max_children指定固定的子進程數(shù)涤伐。如果選擇dynamic馒胆,則由下開參數(shù)決定:
pm.max_children #子進程最大數(shù)
pm.start_servers #啟動時的進程數(shù)
pm.min_spare_servers #保證空閑進程數(shù)最小值,如果空閑進程小于此值凝果,則創(chuàng)建新的子進程
pm.max_spare_servers #保證空閑進程數(shù)最大值祝迂,如果空閑進程大于此值,此進行清理
對于內(nèi)存大的服務(wù)器(比如8G以上)來說器净,指定靜態(tài)的max_children
實際上更為妥當型雳,因為這樣不需要進行額外的進程數(shù)目控制,會提高效率掌动。
對于內(nèi)存小的服務(wù)器四啰,使用動態(tài)方式。具體最大數(shù)量根據(jù) 內(nèi)存/20M 得到粗恢。比如512M的VPS柑晒,建議pm.max_spare_servers
設(shè)置為20。至于pm.min_spare_servers
眷射,則建議根據(jù)服務(wù)器的負載情況來設(shè)置匙赞,比較合適的值在5~10之間。