2014-03-01 39 views
0

我已經構建了一個用於數據庫接口的小型庫,但是我擔心如果將它用於大流量大規模應用程序時可能會出現的問題。我現在的實施是:執行數據庫連接檢查時的性能問題

SELECT 1+1; 

檢查與數據庫的連接。在打電話給數據庫之前,我都有這個功能。

這會影響整體應用程序的性能嗎? 它會導致數據庫服務器崩潰嗎?

編輯: 請仔細閱讀僞代碼:

Create database object with (engine, host, dbname, user, passowrd) 
send 'SELECT article FROM dbtable WHERE id=some_id' to the database 
// Behind the scenes 
==== if no connection, connect. 
====== connect ot database, error if not able 
==== else send query 
// End behind the scenes 
.... 
// Other code 

什麼好處我看到這一點:

  1. 如果不需要連接,它不會被實例化。降低未使用的連接數到服務器
  2. 重新連接,如果需要
  3. 可以靜默後備
  4. 如果連接請求之間的模具,重新

回答

1

你不應該不必要使用此查詢。畢竟,做這件事有什麼意義。

嘗試執行要執行的實際查詢。如果查詢不成功,無論如何,你會拋出一些錯誤!

這會影響整體應用程序的性能嗎?它會導致數據庫服務器崩潰嗎?

會有一個數字,你不需要額外的&不必要的查詢!數據庫的崩潰也取決於很多其他因素!

+0

薄是,如果此功能失敗,然後我嘗試再次連接。創建對象時,必須將值提供給它。我想實現的是,如果數據庫連接已關閉,請重新打開該應用程序。 –