12.24 php-fpm進程管理
[root@hf-01 ~]# cat /usr/local/php-fpm/etc/php-fpm.d/www.conf
[www]
listen = /tmp/php-fcgi.sock
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
request_slowlog_timeout = 1
slowlog = /usr/local/php-fpm/var/log/www-slow.log
php_admin_value[open_basedir]=/data/wwwroot/test.com:/tmp/
[root@hf-01 ~]#
- pm = dynamic //表示進程以什麼形式啓動,dynamic就是動態,動態就是一開始爲一個數值,根據需求再自動生成,服務器比較閒的時候還會去銷燬,銷燬到必定程度還有自動生成
- pm.max_children = 50 //最大子進程數,ps aux能夠查看
- pm.start_servers = 20 //啓動服務時會啓動的進程數
- pm.min_spare_servers = 5 //定義在空閒時段,子進程數的最少數量,若是達到這個數值時,php-fpm服務會自動派生新的子進程。
- pm.max_spare_servers = 35 //定義在空閒時段,子進程數的最大值,若是高於這個數值就開始清理空閒的子進程。
- pm.max_requests = 500 //定義一個子進程最多處理的請求數,也就是說在一個php-fpm的子進程最多能夠處理這麼多請求,當達到這個數值時,它會自動退出。
- rlimit_files = 1024
- request_slowlog_timeout = 1
- slowlog = /usr/local/php-fpm/var/log/www-slow.log
- php_admin_value[open_basedir]=/data/wwwroot/test.com:/tmp/
dynamic和static
- pm = dynamic //表示進程以什麼形式啓動,dynamic就是動態,動態就是一開始爲一個數值,根據需求再自動生成,服務器比較閒的時候還會去銷燬,銷燬到必定程度還有自動生成;根據下面的設置去進行設定「start_servers 」、「min_spare_servers 」、「max_spare_servers 」、「max_requests 」
- pm = static 以後,一旦選擇這個設置,下面的pm的各類設置只會有一個max_children生效,並啓動的時候就生成50個