php cgi.exe進程太多的解決方法:先檢查系統磁碟空間,檢視系統暫存檔案是否過多;然後使用「del *.*」指令刪除所有檔案;接著將程式設定檔中的StartProcesses值縮到2;最後優化fastcgi設定檔參數即可。
推薦:《PHP影片教學》
php cgi.exe進程太多的解決辦法:
伺服器php-cgi.exe進程過多,導致CPU佔用100%的解決方案:
1、檢查系統磁碟空間。檢視系統暫存檔案是否過多,mysql資料庫的暫存檔案預設存到了c:/windows/temp,導致累積了幾萬甚至上百萬的小文件,壓垮系統碟。
del *.* 刪除所有檔案
2、在IIS中並沒有內建對PHP語言的支持,使用PHP,必須自行安裝。 PHP可以安裝為CGI模式或是ISAPI模式,由於ISAPI模式有較高的效能,建議大家使用ISAPI模式。
3、如能修改程序,建議將程序設定檔中的StartProcesses值縮到2,看是否有改善。
4、看是否伺服器有問題攻擊現象。
windows 2003 IIS6中最佳化fastcgi設定檔fcgiext.ini,減少php-cgi.exe進程數和所佔記憶體大小
## 設定環境為windows 2003 IIS6 fastcgi(FCGI) PHP5.2.17 ,發現工作在FastCGI模式下的PHP會佔用越來越多的內存,訪問量稍微多點php-cgi進程就多了N個,同樣情況下能比原來用isapi模式的時候多出幾百M,伺服器記憶體只有2G傷不起啊。 解決這個問題的方法是在web伺服器設定中最佳化fastcgi設定檔參數。 在C:\WINDOWS\system32\inetsrv\fcgiext.ini 檔案中可以設定php-cgi進程相關參數,如:[Types] php = PHP [PHP] ExePath=C:\php-5.3.8-nts-Win32-VC9-x86\php-cgi.exe maxInstances=100 InstanceMaxRequests=10000 EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000 RequestTimeout=600 ActivityTimeout=900在上面的設定: ExePath 指定了FastCGI解析程式的路徑, instanceMaxRequests 指定了每個實例可以處理的最大請求數, maxInstances 指定可以啟動的最大實例數# # EnvironmentVars 建立了一個環境變數PHP_FCGI_MAX_REQUESTS ,預設值設為10000, requestTimeout 指定了請求的逾時時間為600秒, activity時間為會話時間。 以下是建議值 maxInstances= 建議把這個值改小 512M 記憶體的改變maxInstances=50
## 512M 記憶體的改變maxInstances=50
## 512M 內存的改記憶體的改maxInstances=80 2G 記憶體的改maxInstances=140 再修正InstanceMaxRequests=建議把這個值改小# 512M 的記憶體改變InstanceMaxRequests=200 1G 記憶體的改InstanceMaxRequests=300 2G 記憶體的改InstanceMaxRequests=500# 2G 記憶體的改InstanceMaxRequests=500# 改
以上是php cgi.exe進程太多怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!