程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> mysql連接數據庫localhost比127.0.0.1慢

mysql連接數據庫localhost比127.0.0.1慢

編輯:更多數據庫知識
最近發現程序反應時間有點慢,於是逐漸的排除,計算每段程序執行的時間,最後發現時間損耗都花在了鏈接數據庫上,數據庫鏈接也沒有什麼好的辦法,於是便放下它了。
   次日,我測試一下數據庫的遠程鏈接,發現我用IP訪問數據庫的執行時間很短要遠遠小於我在本地用localhost連接數據庫。於是便有了下面一段測試:

set_time_limit(0) ;
$localtime = 0 ;
for($i=1;$i<=50;$i++){
    $btime = get_microtime() ;   
    $conn = new mysqli("localhost","root","admin","petct_seo") ;
    $conn->close() ;
    $etime = get_microtime() ;
    $localtime += $etime-$btime ;
}

$iptime =0 ;
for($i=1;$i<=50;$i++){
    $btime = get_microtime() ;   
    $conn = new mysqli("127.0.0.1","root","admin","petct_seo") ;
    $conn->close() ;
    $etime = get_microtime() ;
    $iptime += $etime-$btime ;
}

echo "localhost時間損耗為:".($localtime)/$i."<br />" ;
echo "127.0.0.1時間損耗為:".($iptime/$i)."<br />" ;

function get_microtime(){
    list($micro,$time) = explode(" ",microtime());
    return $time+$micro ;
}

輸出結果是:
localhost時間損耗為:0.98833055122226
127.0.0.1時間損耗為:0.0039590807522044

兩種連接方式的時間損耗差別很大,若有高手幫忙解答一下就好了。
本人猜測了一下,可能是DNS解析的原因了,是不是由於localhost的解析需要時間了。
說明一下我用的是window系統。 *
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved