Tomcat4.1中解決連接池泄露的方法

在web應用裏,應該顯式的關閉結果集,聲明和連接(esultSet,Statement,Connection)。
相反,則會導致這些資源不能再利用,出現連接池泄露問題,最終導致無法訪問web應用。
 在Tomcat4.1裏,有一種解決方法。就是通過設置Jakarta-Commons DBCP ,來防止連接池泄露。
配置情況就是在server.xml的DBCP DataSource 的Resource 元素的ResourceParams的元素標籤裏,
設定removeAbandoned值爲true。例如如下設定:
<Resource name="jdbc/epoch" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/epoch">
...
<parameter>
<name>removeAbandoned</name>
   <value>true</value>
</parameter>
...
</ResourceParams>
</Resource>
 Tomcat4.1的默認removeAbandoned的值是false。
 還有一個參數removeAbandonedTimeout可以設置一個數據庫連接的最長閒置時間。
例如如下:
...
<parameter>
<name>removeAbandonedTimeout</name>
   <value>60</value>
</parameter>
...
 Tomcat4.1默認值是300秒。
 如果需要日誌記錄丟棄的連接資源,可以如下設定
...
<parameter>
   <name>logAbandoned</name>
   <value>true</value>
</parameter>
...
 Tomcat的默認值是false. 
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章