php涉及數據庫操作時響應很慢。


症狀描述:

網站是php開發的,大部分頁面響應很慢。

本地開發時響應速度很快,但是部署到生產環境后大部分響應很慢。

 

通過谷歌瀏覽調試發現PHP頁面加載很慢,有個別的php請求的響應時間甚至超過10秒,php請求的處理都不是很復雜,不該這么慢。

主要花費的時間全耗在了Waiting(TTFB)上,有的很慢的頁面如那個10.2秒的頁面,Waiting的時間竟然達到了10秒。

偶然間發現有個別的頁面,在不登陸的情況下響應很快,登錄后響應很慢,這樣的頁面特別查看了下,發現登錄情況下會執行mysql的select,不登陸則直接顯示固定的內容。

因此鎖定為在涉及mysq操作時響應速度才很慢。

寫了個簡單的mysql  的select查詢,通過web訪問后發現很慢,通過microtime()統計執行時間發現時間是幾十毫秒或毫秒級的,但是Waiting的時間仍然是秒級的。這明顯的不科學啊,php從開始執行到結束的時間   和 web的響應時間差好幾個數量級的。

涉及mysql操作時很慢,但是php本身執行完 mysql操作花費的時間並不慢啊。

 

弄到這也沒啥路子了,只能去搜度娘了,結果還真搜到了,有人也出現一樣的情況在度娘上提問了,竟然還有人回答了,突然感覺還是好人多啊。

按回答者的意思是連接數據庫時使用的是localhost,但是hosts中沒有配置localhost。

 

去查看hosts了,一看,我去。。。真沒有localhost。

添加上    

  127.0.0.1       localhost   

,生成環境下php web訪問速度立馬給力了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM