看板 java 關於我們 聯絡資訊
※ 引述《healangel (幻想現實)》之銘言: : 最近使用TOMCAT在處理回收CONNECT的時候搞不太懂參數 : 想請問一下 : 在設置 removeAbandoned=true 後 : 假設現在設定 : maxIdle=30 : removeAbandonedTimeout=180 : (一.) : 若 removeAbandonedTimeout 時間設的太短 : 會害 connect 在資料庫回傳數值前就被回收掉嗎@@? : (例如removeAbandonedTimeout只設1分鐘,結果SQL跑了3分鐘這樣... ) : (二.) : 這樣設定是Idle的connect達到30個後,會從已超過180秒的開始砍 : 還是只要超過180秒,閒置的connect都會砍掉? : 那順便問問要是閒置的connect超過30個會怎樣@@? : 剛碰這一塊...有點怕自己詞不達意Orz 1.會 2.超過removeAbandonedTimeout的都會被砍, 不論是idle或active connections 但active connection必需閒置超過removeAbandonedTimeout 順便補充一下removeAbandoned的觸發時機 當設定removeAbandoned為true,在呼叫getConnection()時 會檢查(getNumIdle() < 2) and (getNumActive() > getMaxActive() - 3) 若滿足則會觸發removeAbandoned References: 1. http://commons.apache.org/proper/commons-dbcp/configuration.html 2. http://bit.ly/19hXNUG 3. http://bit.ly/124RCBe -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.183.7 ※ 編輯: phstudy 來自: 123.193.183.7 (08/15 00:19)
healangel:非常感謝,好受用! 08/15 16:47