1. 問題描述
          Web程序在tomcat剛開始運(yùn)行時(shí)速度很快,但過一段時(shí)間后發(fā)現(xiàn)速度變得很慢。
          檢查日志輸出,發(fā)現(xiàn)異常如下:
          org.apache.commons.dbcp.SQLNestedException:
          Cannot get a connection, pool exhausted,
          cause:
          java.util.NoSuchElementException: Timeout waiting for idle
          object
          同時(shí)在SQLServer事件探查器中發(fā)現(xiàn),每執(zhí)行一次sql語句都要產(chǎn)生Audit login事件,語句執(zhí)行后產(chǎn)生
          Audit
          logout事件。說明每一次tomcat都是重新打開新的連接。

          2. 問題解決
          tomcat
          的數(shù)據(jù)源定義提供了三個(gè)參數(shù):
          a. 如果設(shè)為true則tomcat自動(dòng)檢查恢復(fù)重新利用,沒有正常關(guān)閉的Connection.(默認(rèn)是false)
          <parameter>
          <name>removeAbandoned</name>
          <value>true</value>
          </parameter>
          b.
          設(shè)定連接在多少秒內(nèi)被認(rèn)為是放棄的連接,即可進(jìn)行恢復(fù)利用。
          <parameter>
          <name>removeAbandonedTimeout</name>
          <value>60</value>
          </parameter>
          c.
          輸出回收的日志,可以詳細(xì)打印出異常從而發(fā)現(xiàn)是在那里發(fā)生了泄漏
          <parameter>
          <name>logAbandoned</name>
          <value>true</value>
          </parameter>

          比如:<Resource logAbandoned="true" removeAbandonedTimeout="60" removeAbandoned="true"

          只有注冊用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           

          posts - 9, comments - 2, trackbacks - 0, articles - 3

          Copyright © 勤勞的小熊貓

          主站蜘蛛池模板: 同仁县| 瓦房店市| 称多县| 莲花县| 读书| 安义县| 简阳市| 昂仁县| 泰州市| 五指山市| 思茅市| 华坪县| 墨玉县| 化隆| 商都县| 罗源县| 方城县| 广昌县| 额尔古纳市| 绍兴县| 高雄市| 汽车| 合江县| 林口县| 山东| 十堰市| 桦南县| 贵州省| 平顺县| 华宁县| 偏关县| 始兴县| 潼关县| 都昌县| 信宜市| 德江县| 南岸区| 腾冲县| 巫溪县| 文山县| 百色市|