nginx和php fpm的配置

2022-09-02 21:18:14 字數 1061 閱讀 5467

一、nginx

配置檔案:nginx.conf

原則:woker程序數與cpu核數一致。(master程序用以管理woker程序,高併發可以考慮woker程序設定提高為cpu核數*2)

引數:worker_processes 1;

原因:nginx作為**,是提交請求給php-fpm的,並沒有涉及到io(即讀寫),只是啟動程式,時間極短無阻塞問題。就算你設定了大於核心數,也只是在做佇列等待,沒有意義。

二、php-fpm

配置檔案:php-fpm.conf

關鍵引數:

//

設定型別static(靜態)或者dynamic(動態),靜態下是固定的程序數,動態的情況下,會關閉或開啟新的程序

pm = dynamic

//靜態方式下開啟的php-fpm程序數量

pm.max_children = 100

//動態方式下的起始php-fpm程序數量

pm.start_servers = 30

//動態方式下的最小php-fpm程序數

pm.min_spare_servers = 20

//動態方式下的最大php-fpm程序數。

pm.max_spare_servers = 100

//當乙個 php-cgi 程序處理的請求數累積到 500 個後,自動重啟該程序。如果設定為 』0′ 則一直接受請求。對記憶體洩漏的程式非常有用。

pm.max_requests = 500

1、開始的時候乙個php-fpm程序只占用3m左右記憶體,執行一段時間後就會上公升到20-30m的原因了。

2、對於記憶體大的伺服器(比如8g以上)來說,指定靜態的max_children實際上更為妥當,因為這樣不需要進行額外的程序數目控制,會提高效率。

3、對於小記憶體的伺服器來說,比如256m記憶體的vps,即使按照乙個20m的記憶體量來算,10個php-cgi程序就將耗掉200m記憶體,那系統的崩潰就應該很正常了。應該合理設定動態。

4、配置建議:記憶體/30。如我的阿里雲為1024m/30m=34.1,所以阿里給我配置了35。因為乙個php-fpm執行穩定一般佔20-30m

centos 配置php fpm和nginx的通訊

以下是nginx的預設配置檔案 server error page 404 404.html redirect server error pages to the static page 50x.html error page 500 502 503 504 50x.html location 50...

PHP FPM 的管理和配置

php fpm 是 fastcgi 的程序管理器。php fpm 管理 master 主程序理解以下訊號 檢視 php fpm 使用者 ps aux grep php fpm 檢視 php fpm 程序 pid ps ef grep php fpm 啟動 php fpm php fpm d 關閉 p...

PHP FPM 的管理和配置

php fpm 是 fastcgi 的程序管理器。php fpm 管理 master 主程序理解以下訊號 檢視 php fpm 使用者 ps aux grep php fpm 檢視 php fpm 程序 pid ps ef grep php fpm 啟動 php fpm php fpm d 關閉 p...