php fpm進程太多的解決方法:先查看php進程總數;然後列出消耗記憶體最多的前50個進程;接著透過修改設定檔來優化「php-fpm」;最後重啟伺服器即可。
推薦:《PHP影片教學》
解決CentOS 7中php-fpm進程數過多導致伺服器記憶體資源消耗較大的問題
什麼是php-fpm:
php-fpm即FastCGI進程管理器,用於控制php的記憶體和進程等。
操作環境:
CentOS 7
問題檢查:
先查看php行程總人數:
pstree|grep php-fpm
回顯:
|-php-fpm---20*[php-fpm]
根據回顯資訊可知,查詢時有20個php-fpm進程。
也可以透過下面的命令列出消耗記憶體最多的前50個進程:
ps auxw|head -1;ps auxw|sort -rn -k4|head -50
解決過程:
#下面我們透過修改設定檔來優化php-fpm ,以達到降低記憶體使用率的目的。
我的php-fpm設定檔在 …/server/php/etc/ 目錄下,進入該目錄。
先備份一下原始設定檔:
cp php-fpm.conf php-fpm.conf.bak
註:使用vim開啟設定檔後,按Esc鍵,之後輸入」/」, 再輸入「xxx」可以找「xxx」這個字串。
具體設定參數如下:
pm.max_children = 100改为:pm.max_children = 25 pm.start_servers = 20改为pm.start_servers = 5 pm.min_spare_servers = 5改为pm.min_spare_servers = 2 pm.max_spare_servers = 35改为pm.max_spare_servers = 10
重啟伺服器:
reboot
重啟後可以發現記憶體使用率比之前降低了。
附註:
php-fpm.conf中參數作用的說明:
#pm.max_children:靜態方式下開啟的php-fpm行程數量。
pm.start_servers:動態方式下的起始php-fpm行程數量。
pm.min_spare_servers:動態方式下的最小php-fpm進程數。
pm.max_spare_servers:動態方式下的最大php-fpm行程數。
進行上述設定時,我將php-fpm的執行方式設定成了動態:
pm = dynamic
php-fpm有兩種執行方式:
一種是Static靜態,另一種是Dynamic動態。如果設定成靜態,那麼只有 pm.max_children 這個參數運作。如果設定成動態則有 pm.start_servers 、 pm.min_spare_servers 和 pm.max_spare_servers 這三個參數運作。設定成動態後,當php-fpm啟動時會依照 pm.start_servers 的參數設定啟動對應個數的進程,之後php-fpm的進程數量將維持在 pm.min_spare_servers 和 pm.max_spare_servers 指定的數量之間。
如何選擇使用php-fpm的靜態或動態執行方式:
動態php-fpm執行方式允許php-fpm釋放多餘進程,從而節省記憶體資源。
靜態php-fpm執行方式不允許php-fpm釋放多於進程,避免了頻繁開啟或停止php-fpm進程,從而降低了伺服器在某些情況下的回應時間。
以上是CentOS 7中php fpm進程太多怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

CentOS的替代方案包括UbuntuServer、Debian、Fedora、RockyLinux和AlmaLinux。 1)UbuntuServer適合基本操作,如更新軟件包和配置網絡。 2)Debian適用於高級用法,如使用LXC管理容器。 3)RockyLinux可通過調整內核參數優化性能。

CentOS 關機命令為 shutdown,語法為 shutdown [選項] 時間 [信息]。選項包括:-h 立即停止系統;-P 關機後關電源;-r 重新啟動;-t 等待時間。時間可指定為立即 (now)、分鐘數 ( minutes) 或特定時間 (hh:mm)。可添加信息在系統消息中顯示。

CentOS 和 Ubuntu 的關鍵差異在於:起源(CentOS 源自 Red Hat,面向企業;Ubuntu 源自 Debian,面向個人)、包管理(CentOS 使用 yum,注重穩定;Ubuntu 使用 apt,更新頻率高)、支持週期(CentOS 提供 10 年支持,Ubuntu 提供 5 年 LTS 支持)、社區支持(CentOS 側重穩定,Ubuntu 提供廣泛教程和文檔)、用途(CentOS 偏向服務器,Ubuntu 適用於服務器和桌面),其他差異包括安裝精簡度(CentOS 精

CentOS 中配置 IP 地址的步驟:查看當前網絡配置:ip addr編輯網絡配置文件:sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0更改 IP 地址:編輯 IPADDR= 行更改子網掩碼和網關(可選):編輯 NETMASK= 和 GATEWAY= 行重啟網絡服務:sudo systemctl restart network驗證 IP 地址:ip addr

CentOS 安裝步驟:下載 ISO 映像並刻錄可引導媒體;啟動並選擇安裝源;選擇語言和鍵盤佈局;配置網絡;分區硬盤;設置系統時鐘;創建 root 用戶;選擇軟件包;開始安裝;安裝完成後重啟並從硬盤啟動。

重啟 SSH 服務的命令為:systemctl restart sshd。步驟詳解:1. 訪問終端並連接到服務器;2. 輸入命令:systemctl restart sshd;3. 驗證服務狀態:systemctl status sshd。

在 CentOS 8 中重啟網絡需執行以下步驟:停止網絡服務(NetworkManager)重新加載網絡模塊(r8169)啟動網絡服務(NetworkManager)檢查網絡狀態(通過 ping 8.8.8.8)

重啟 CentOS 7 可使用 reboot 命令。步驟如下:打開終端窗口並輸入 reboot 命令。確認重啟提示。系統將重啟,期間會出現引導菜單。重啟完成後,使用憑據登錄。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Dreamweaver Mac版
視覺化網頁開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。