項目運行一段時間後,cannot open connection

我的一個項目用的框架是spring1.2+hibernate3.1+struts1.2,應用服務器是webshpere,但是沒有用websphere的連接池,用的是apache的dbcp。

在測試機上內部運行測試一段時間後,會報cannot open connection 錯誤,經分析,應該是併發連接數量不夠用的緣故,覺得可能是apache的dbcp有問題,明天準備用websphere的連接池更換再試試。

但疑惑的是,我對數據庫操作,都是通過spring 的hibernateTemplate來操作的,hibernateTemplate封裝了對鏈接的關閉操作,事務用的是聲明式事務,如果事務配置正確,則會在執行完事務後關閉鏈接;如果事務配置不正確,則會在執行完數據庫操作之後關閉鏈接,更不存在事務問題,怎麼會出現鏈接不夠用的情況呢???如果是dbcp的問題,那使用spring+hibernate是否就不能用tomcat做應用服務器呢,因爲tomcat的連接池用的就是dbcp啊??

不知道哪位朋友遇到過這種問題並解決了這種問題,因爲我在網上找到的都只是有人提出了這個問題,但是沒有人能給出個解決方案,希望不吝賜教。

由於是測試機,所以在項目出現cannot open connection 錯誤,用戶幾分鐘不做任何操作後,又可以重新操作,說明是連接池在達到了maxWait之後收回了connection,用戶再操作時能夠重新分配到connection,說明cannot open connection 錯誤的確是鏈接數量達到了連接池的maxActive所導致。

不知道有哪位朋友可以賜教這個問題,非常感謝
發佈了12 篇原創文章 · 獲贊 1 · 訪問量 5659
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章