php-fpm優化
在優化PHP的程式數的時候我們首先要了解我們伺服器執行一個php使用的記憶體
1: 查詢一個php佔用的記憶體方法
pmap $(pgrep php-fpm | head -1)
我這裡查詢到的是
00002ba5d0bec000 4K rw-s- /dev/zero (deleted)
00002ba5d0bed000 4K rw-s- /dev/zero (deleted)
00007fffc568b000 80K rwx– [ stack ]
00007fffc569f000 4K rw— [ anon ]
00007fffc57fd000 12K r-x– [ anon ]
ffffffffff600000 8192K —– [ anon ]
total 309548K
大概30MB的樣子
我本身機器記憶體是32G,那麼理論上計算最大能承受php的併發是 32G/30MB=1092個
那麼如果除去系統跟其他軟體的使用記憶體大概算900個
2 :php-fpm的配置公式:pm.start_servers = min_spare_servers + (max_spare_servers – min_spare_servers) / 2
pm.max_children的計算方法,本機記憶體/30兆每個為最大的限定值再適當減小
相關引數解讀:
pm.max_children:靜態方式下開啟的php-fpm程式數量。
pm.start_servers:動態方式下的起始php-fpm程式數量。
pm.min_spare_servers:動態方式下的最小php-fpm程式數量。
pm.max_spare_servers:動態方式下的最大php-fpm程式數量。
針對我的伺服器情況調整這幾個值為(當然我這邊是叢集所以我啟動300個已經足夠了):
pm.max_children = 300
pm.start_servers = 155
pm.min_spare_servers = 10
pm.max_spare_servers = 300
###################################################
(備註:如果不按這個公式計算做配置多多少少會出現寫問題,比如
seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers), spawning 32 children, there are 0 idle, and 34 total children (這個很明顯是要你調節程式數)
child 1616 exited with code 0 after 619688.718148 seconds from start (一下三個好像都是提示執行超時)
child 14636 exited on signal 15 (SIGTERM) after 269249.100189 seconds from star
request: “POST /test.php”) execution timed out (198.776247 sec), terminating
等等類似的報錯
如果是ngixn做的前端代理會出現當後端伺服器出現類似問題就會連線失敗提示沒線上的主機等等情況
no live upstreams while connecting to upstream, client
)
####################################################
相關文章
- php-fpm的配置和優化PHP優化
- 對線面試官:php-fpm優化總結面試PHP優化
- php-fpm的最佳化PHP
- php-fpm程式設定最佳化PHP
- php-fpm優化方法 pm.min_spare_servers、pm.max_spare_servers 的真實意義PHP優化Server
- 前端效能優化(JS/CSS優化,SEO優化)前端優化JSCSS
- Mac PHP-fpmMacPHP
- PHP-fpm + nginxPHPNginx
- 高流量站點NGINX與PHP-fpm配置最佳化NginxPHP
- php-fpm的pool、php-fpm慢執行日誌、open_basedir、php-fpm程式管理PHP
- 效能優化案例-SQL優化優化SQL
- MSSQL優化之索引優化SQL優化索引
- CUDA優化之指令優化優化
- php-fpm報錯PHP
- cgi,fastcgi,php-fpmASTPHP
- PHP-FPM vs SwoolePHP
- php-fpm的poolPHP
- Android效能優化----卡頓優化Android優化
- 資料庫優化 - SQL優化資料庫優化SQL
- 【前端效能優化】vue效能優化前端優化Vue
- 前端效能優化 --- 圖片優化前端優化
- sql優化之邏輯優化SQL優化
- [效能優化]DateFormatter深度優化探索優化ORM
- SQL優化:limit分頁優化SQL優化MIT
- (mysql優化-3) 系統優化MySql優化
- MySQL 效能優化之索引優化MySql優化索引
- MySQL優化-安裝配置優化MySql優化
- Web效能優化:圖片優化Web優化
- MySQL 效能優化之SQL優化MySql優化
- Oracle效能優化-SQL優化(案例一)Oracle優化SQL
- Oracle效能優化-SQL優化(案例二)Oracle優化SQL
- Oracle效能優化-SQL優化(案例三)Oracle優化SQL
- Oracle效能優化-SQL優化(案例四)Oracle優化SQL
- Android 效能優化 ---- 啟動優化Android優化
- 效能優化(二) UI 繪製優化優化UI
- hive優化-資料傾斜優化Hive優化
- 效能優化|Tomcat 服務優化優化Tomcat
- Apache網頁優化與安全優化Apache網頁優化