佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > PHP-FPM的配置與優(yōu)化講解

PHP-FPM的配置與優(yōu)化講解

熱門標(biāo)簽:電子圍欄 團(tuán)購(gòu)網(wǎng)站 Mysql連接數(shù)設(shè)置 科大訊飛語(yǔ)音識(shí)別系統(tǒng) Linux服務(wù)器 阿里云 服務(wù)器配置 銀行業(yè)務(wù)

PHP-FPM(FastCGI Process Manager:FastCGI進(jìn)程管理器)是一個(gè)PHPFastCGI管理器,用于管理 PHP 進(jìn)程池、接收和處理 Web 服務(wù)器的請(qǐng)求。PHP-FPM 會(huì)創(chuàng)建一個(gè)主進(jìn)程,控制何時(shí)以及如何把 HTTP 請(qǐng)求轉(zhuǎn)發(fā)給一個(gè)或多個(gè)子進(jìn)程處理。

全局配置

emergency_restart_threshold = 60(建議值)

如果子進(jìn)程在 emergency_restart_interval 設(shè)定的時(shí)間內(nèi)收到該參數(shù)設(shè)定次數(shù)的 SIGSEGV 或者 SIGBUS退出信息號(hào),則FPM會(huì)重新啟動(dòng)。

emergency_restart_interval = 1m

用于設(shè)定平滑重啟的間隔時(shí),單位:s(秒),m(分),h(小時(shí))或者 d(天)。默認(rèn)單位:s(秒)。

這個(gè)兩個(gè)設(shè)置的作用是,如果在指定的一段時(shí)間內(nèi)指定的子進(jìn)程失效了,讓 PHP-FPM 重啟。

這個(gè)兩個(gè)設(shè)置默認(rèn)是關(guān)閉的,建議開啟,

進(jìn)程池配置

PHP-FPM 中有一個(gè) Pool Definitions 的區(qū)域,意為進(jìn)程池,通常建議一個(gè) PHP 應(yīng)用使用一個(gè)進(jìn)程池。

PHP-FPM 配置文件有默認(rèn)名為 www 的配置內(nèi)容。

user = 運(yùn)行 PHP 的非 root 用戶

子進(jìn)程運(yùn)行的用戶。必須設(shè)置。

group = 運(yùn)行 PHP 的非 root 用戶所屬的用戶組

子進(jìn)程運(yùn)行的用戶組。如果沒有設(shè)置,則默認(rèn)用戶的組被使用。

listen = 127.0.0.1:9000 或者 /path/to/unix/socket

設(shè)置接受 FastCGI 請(qǐng)求的地址。

listen.allowed_clients = 127.0.0.1

設(shè)置允許連接到 FastCGI 的服務(wù)器 IP 地址。默認(rèn)情況,這個(gè)字段是注釋掉了,建議開啟。

pm = 生產(chǎn)環(huán)境 static

設(shè)置進(jìn)程管理器如何管理子進(jìn)程??捎弥担簊tatic,ondemand,dynamic。

  • static:子進(jìn)程的數(shù)量是固定的(pm.max_children)。
  • ondemand:進(jìn)程在有需求時(shí)才產(chǎn)生(當(dāng)請(qǐng)求時(shí),與 dynamic 相反,pm.start_servers 在服務(wù)啟動(dòng)時(shí)即啟動(dòng)。
  • dynamic:子進(jìn)程的數(shù)量在下面配置的基礎(chǔ)上動(dòng)態(tài)設(shè)置:pm.max_children,pm.start_servers,pm.min_spare_servers,pm.max_spare_servers。

pm.max_children =

設(shè)置 PHP-FPM 進(jìn)程池中最多能有多少個(gè)進(jìn)程。這個(gè)沒有絕對(duì)正確值,要根據(jù)實(shí)際情況設(shè)置。

假設(shè)每個(gè) PHP 進(jìn)程使用 20-30M 內(nèi)存,為整個(gè) PHP-FPM 環(huán)境配置了 512 M 內(nèi)存,那么可以設(shè)置為 17-25 中間值。

pm.start_servers =

設(shè)置啟動(dòng)時(shí)創(chuàng)建的子進(jìn)程數(shù)目。僅在 pm 設(shè)置為 dynamic 時(shí)使用。

pm.min_spare_servers =

設(shè)置空閑服務(wù)進(jìn)程的最低數(shù)目。僅在 pm 設(shè)置為 dynamic 時(shí)使用。必須設(shè)置。

pm.max_spare_servers =

設(shè)置空閑服務(wù)進(jìn)程的最大數(shù)目。僅在 pm 設(shè)置為 dynamic 時(shí)使用。必須設(shè)置。

pm.max_requests = 1000

設(shè)置每個(gè)子進(jìn)程重生之前服務(wù)的請(qǐng)求數(shù)。對(duì)于可能存在內(nèi)存泄漏的第三方模塊來說是非常有用的。如果設(shè)置為 '0' 則一直接受請(qǐng)求,默認(rèn)值:0。

slowlog =

慢請(qǐng)求的記錄日志。

注意 PHP-FPM 進(jìn)程所屬的用戶和用戶組必須具有相應(yīng)文件的寫權(quán)限。

request_slowlog_timeout = 5

當(dāng)一個(gè)請(qǐng)求該設(shè)置的超時(shí)時(shí)間后,就會(huì)將對(duì)應(yīng)的 PHP 調(diào)用堆棧信息完整寫入到慢日志中。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

您可能感興趣的文章:
  • PHP自動(dòng)生成縮略圖函數(shù)的源碼示例
  • PHP添加文字水印或圖片水印的水印類完整源代碼與使用示例
  • PHP實(shí)現(xiàn)對(duì)數(shù)字分隔加千分號(hào)的方法
  • PHP生成指定范圍內(nèi)的N個(gè)不重復(fù)的隨機(jī)數(shù)
  • PHP中十六進(jìn)制顏色與RGB顏色值互轉(zhuǎn)的方法
  • Ubuntu16.04搭建php5.6Web服務(wù)器環(huán)境
  • PHP標(biāo)準(zhǔn)庫(kù)(PHP SPL)詳解
  • PHP PDO數(shù)據(jù)庫(kù)操作預(yù)處理與注意事項(xiàng)
  • php-fpm中max_children的配置
  • PHP中單例模式的使用場(chǎng)景與使用方法講解

標(biāo)簽:棗莊 衢州 江蘇 蚌埠 廣元 衡水 大理 萍鄉(xiāng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP-FPM的配置與優(yōu)化講解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    资源县| SHOW| 确山县| 夏河县| 三明市| 廊坊市| 城固县| 河东区| 平顶山市| 北安市| 荔波县| 大冶市| 银川市| 上高县| 张掖市| 德庆县| 龙井市| 淄博市| 普洱| 白山市| 将乐县| 岳阳县| 龙游县| 泰宁县| 会昌县| 屏南县| 葫芦岛市| 商城县| 县级市| 青川县| 乳山市| 东海县| 大同市| 长治市| 三穗县| 广灵县| 博兴县| 昌平区| 沙洋县| 嘉义市| 竹山县|