Sqlserver 鏈接池解決方案

1.數據庫連接池的基本思想就是爲數據庫連接 建立一個“緩衝池”。
預先在緩衝池中放入一定數量的連接,當需要建立數據庫連接時,只需從“緩衝池”中取出一個,使用完畢之後再放回去。
我們可以通過設定 連接池最大連接數來防止系統無盡的與數據庫連接。
更爲重要的是我們可以通過連接池的管理機制監視數據庫的連接的數量?使用情況,爲系統開發?測試及性能調 整提供依據。
 
2.在連接池的使用過程中會出現一個問題,已放入池中的數據庫連接會超時,因爲數據庫端有默認超時時間,超時自動斷開
在訪問的時候會出現連接池已關閉的問題。
 
3.解決問題方案:
a.加大超時時間,mysql默認8小時,sqlserver默認1小時;
mysql設置超時時間:http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_wait_timeout
sqlserver數據庫->屬性->連接,設定時間
b.項目程序定時訪問以保證連接有效;
3.tomcat配置連接池時,指定validationQuery 
validationQuery="select 1" 
validationQuery="/* ping */ SELECT 1" would be better. Newer versions of Connector/J will detect the "ping" 
comment and use an even cheaper connection test than what is required to 
execute this (rather simple) quer
相同問題:http://tomcat.10.x6.nabble.com/java-sql-SQLException-Already-closed-strange-td2128131.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章