Linux平臺(tái)PHP5.4設(shè)置FPM線程數(shù)量的方法
本文實(shí)例講述了Linux平臺(tái)PHP5.4設(shè)置FPM線程數(shù)量的方法。分享給大家供大家參考,具體如下:
PHP5.4安裝完畢后,F(xiàn)PM的默認(rèn)配置文件位于/usr/local/php/etc/php-fpm.conf.default
>cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf >vim /usr/local/php/etc/php-fpm.conf
輸入”/www”,搜索www所在的POOL
pm = dynamic ; The number of child processes to be created when pm is set to 'static' and the ; maximum number of child processes when pm is set to 'dynamic' or 'ondemand'. ; This value sets the limit on the number of simultaneous requests that will be ; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. ; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP ; CGI. The below defaults are based on a server without much resources. Don't ; forget to tweak pm.* to fit your needs. ; Note: Used when pm is set to 'static', 'dynamic' or 'ondemand' ; Note: This value is mandatory. pm.max_children = 5 ; The number of child processes created on startup. ; Note: Used only when pm is set to 'dynamic' ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 pm.start_servers = 2 ; The desired minimum number of idle server processes. ; Note: Used only when pm is set to 'dynamic' ; Note: Mandatory when pm is set to 'dynamic' pm.min_spare_servers = 1 ; The desired maximum number of idle server processes. ; Note: Used only when pm is set to 'dynamic' ; Note: Mandatory when pm is set to 'dynamic' pm.max_spare_servers = 3 ; The number of seconds after which an idle process will be killed. ; Note: Used only when pm is set to 'ondemand' ; Default Value: 10s ;pm.process_idle_timeout = 10s; ; The number of requests each child process should execute before respawning. ; This can be useful to work around memory leaks in 3rd party libraries. For ; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. ; Default Value: 0 ;pm.max_requests = 500
解釋一下:
pm = dynamic 如何控制子進(jìn)程,選項(xiàng)有static和dynamic,默認(rèn)采用dynamic;如果選擇static,則由pm.max_children指定固定的子進(jìn)程數(shù)。
如果選擇dynamic,則由以下參數(shù)決定:
| pm.max_children | 子進(jìn)程最大數(shù) |
| pm.start_servers | 啟動(dòng)時(shí)的進(jìn)程數(shù) |
| pm.min_spare_servers | 保證空閑進(jìn)程數(shù)最小值,如果空閑進(jìn)程小于此值,則創(chuàng)建新的子進(jìn)程 |
| pm.max_spare_servers | 保證空閑進(jìn)程數(shù)最大值,如果空閑進(jìn)程大于此值,則進(jìn)行清理。對(duì)于專用服務(wù)器,pm可以設(shè)置為static。 |
| pm.max_requests | 設(shè)置每個(gè)子進(jìn)程重生之前服務(wù)的請(qǐng)求數(shù). 對(duì)于可能存在內(nèi)存泄漏的第三方模塊來說是非常有用的. 如果設(shè)置為 '0′ 則一直接受請(qǐng)求. 設(shè)置為500就可以了(默認(rèn)0)。 |
將值修改為如下:
pm.max_children = 32 pm.start_servers = 16 pm.min_spare_servers = 8 pm.max_spare_servers = 32 pm.max_requests = 500
:wq 保存退出VIM
>/usr/local/php/sbin/php-fpm -t NOTICE: configuration file /usr/local/php/etc/php-fpm.conf test is successful
測試配置文件是否正常,沒問題,殺掉當(dāng)前的FPM進(jìn)程
>/usr/local/php/sbin/php-fpm
啟動(dòng)
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php程序設(shè)計(jì)安全教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP中應(yīng)該避免使用同名變量(拆分臨時(shí)變量)
利用PHP實(shí)現(xiàn)智能文件類型檢測的實(shí)現(xiàn)代碼
PHP 抽象方法與抽象類abstract關(guān)鍵字介紹及應(yīng)用

