剛搭建好網(wǎng)站 出現(xiàn)PHP-cgi程式佔(zhàn)滿CPU 怎麼解決
直接卡片的伺服器都動(dòng)不了了 尋求解決方法
1. 一些php的擴(kuò)展與php版本兼容存在問(wèn)題,實(shí)踐證明eAccelerater與某些php版本兼容存在問(wèn)題,具體表現(xiàn)時(shí)啟動(dòng)php-cgi進(jìn)程後,運(yùn)行10多分鐘,奇慢無(wú)比,但靜態(tài)資源訪問(wèn)很快,伺服器負(fù)載也很正常(說(shuō)明nginx沒(méi)有問(wèn)題,而是php-cgi進(jìn)程的問(wèn)題),解決辦法就是從php.ini禁止掉eAccelerater模組,再重啟php-cgi進(jìn)程即可
?
2.程式中可能存在死循環(huán),導(dǎo)致伺服器負(fù)載超高(使用top指令查看負(fù)載高達(dá)100+), 需要藉助linux的proc虛擬檔案系統(tǒng)找到特定的問(wèn)題程式
?
3. php程式不合理使用session , 這個(gè)不合理發(fā)生在開(kāi)源微博記事狗程式上,具體表現(xiàn)是有少量php-cgi進(jìn)程(不超過(guò)10個(gè))的cpu使用率達(dá)98%以上, 伺服器負(fù)載在4-8之間,這個(gè)問(wèn)題的解決,仍然需要使用Linux的proc檔案系統(tǒng)找出原因。
建議:伺服器上php版本使用你開(kāi)發(fā)php版本。