我在我的PHP應用程序中使用PDO。它連接到MySQL服務器在同一臺服務器上:爲什麼構建PDO連接速度慢?
$db = new PDO(mysql:host=localhost;dbname=test, $username, $password);
我創建了兩個頁面與其中一個包含調用創建PDO相同的輸出(只是普通的HTML一些虛擬數據)。如果我打開不使用連接的頁面,則響應速度在0.5到1秒之間。
我在我的PHP應用程序中使用PDO。它連接到MySQL服務器在同一臺服務器上:爲什麼構建PDO連接速度慢?
$db = new PDO(mysql:host=localhost;dbname=test, $username, $password);
我創建了兩個頁面與其中一個包含調用創建PDO相同的輸出(只是普通的HTML一些虛擬數據)。如果我打開不使用連接的頁面,則響應速度在0.5到1秒之間。
我一直在做一些谷歌搜索,並在閱讀this thread後,我將localhost
更改爲127.0.0.1
。解決了這個問題....
您讓我的一天!使用本地主機需要一整秒的連接,使用127.0.0.1大約需要一毫秒。 – CodeZombie 2013-02-08 00:41:58
非常有幫助的研究。我試圖找到解決方案,直到這有幫助。從1秒降到3秒以內。 – 2013-07-29 19:30:39
有點'爲什麼':通過使用主機名,PHP被迫在DNS表中查找(慢!)。如果這是一張大桌子,可能需要很長時間才能找到該條目。通過使用靜態IP地址,您可以完全跳過這個解決方案。您甚至可以在非本地主機IP的生產環境中執行此操作! – Gerben 2013-08-01 14:33:25
如何從數據庫中獲取數據而無需連接? – deceze 2012-03-21 07:59:16
虛擬數據只是一些普通的HTML,沒有任何數據庫。 – 2012-03-21 08:02:12
這種影響是不正常的。似乎你有服務器相關的問題。也許SQL服務器響應緩慢。嘗試調查更多,但對我來說這似乎更像是ServerFault問題。 – 2012-03-21 08:03:28