2011-11-04 24 views
0

我想知道是否有任何與使用Singleton類連接到MySQL數據庫相關的負面性能問題。特別是我擔心在網站繁忙時需要花費時間來獲得連接。單身人士能否「陷入困境」?使用單例連接到繁忙網站上的MySql

public static function obtain($server=null, $user=null, $pass=null, $database=null){ 
    if (!self::$instance){ 
    self::$instance = new Database($server, $user, $pass, $database); 
    } 

    return self::$instance; 
} 
+1

我假設這不是一個單一的,長期的PHP過程,而是一個PHP頁面提供HTTP請求?在這種情況下,單例與連接處理,池化等完全無關。 – Kevin

+0

沒有這只是提供http請求 – keeg

回答

1

您可以使用一個單獨來處理你的數據庫連接,因爲即使在只有一個要求,你的應用程序可能會發送一些數據庫查詢,如果你重新打開數據庫連接每一次你將失去的性能。

但請記住,你總是要編寫巧妙的詢問,並要求你的數據庫只爲你需要的數據和幾次越好。這將使它光滑!

2

即使您編寫該代碼,每個PHP請求仍將是不同的連接。這是你想要的。

1

它並沒有真正從MySQL性能的角度來看不管你是否把單身在這種情況下,每個請求到該頁面將創建自己的對象(單身與否)和連接。

相關問題