Druid配置參數(shù)詳解-testOnReturn

Druid配置參數(shù)詳解-testOnReturn

Druid是一個由阿里開源的數(shù)據(jù)庫連接池,Druid的配置非常豐富,但是設(shè)置不當(dāng)會對生產(chǎn)環(huán)境造成嚴(yán)重影響,網(wǎng)上Druid的資料雖多,但大部分都是互相復(fù)制粘貼,有很多不準(zhǔn)確甚至完全錯誤的描述,Druid已經(jīng)開源很久,而且作者WenShao的工作重心也已經(jīng)不在Druid上,有些功能估計他自己都不太了解了。本系列將從源代碼的角度分析Druid目前的最新版本(1.1.21)各個常用的配置項的具體含義以及是怎么起作用的。

畫外音:目前Druid在開源中國舉辦的2019年度最受歡迎中國開源軟件中排名第7名,支持Druid的朋友可以去投票哇。2019年度最受歡迎中國開源軟件

testOnReturn是什么意思?

testOnReturn:如果為true(默認(rèn)false),當(dāng)應(yīng)用使用完連接,連接池回收連接的時候會判斷該連接是否還可用。

testOnReturn什么時候會用到?

當(dāng)連接使用完,調(diào)用commit或者rollback方法后,連接池會回收該連接,該參數(shù)主要在DruidDataSource的recycle方法中用到

            if (testOnReturn) {
                boolean validate = testConnectionInternal(holder, physicalConnection);
                if (!validate) {
                    JdbcUtils.close(physicalConnection);

                    destroyCountUpdater.incrementAndGet(this);

                    lock.lock();
                    try {
                        activeCount--;
                        closeCount++;
                    } finally {
                        lock.unlock();
                    }
                    return;
                }
            }

連接池是如何判斷連接是否有效的?

判斷連接是否可用同testOnBorrow
Druid配置參數(shù)詳解-testOnBorrow

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 文:山園小梅 圖:來自網(wǎng)絡(luò) 邊塞的第一場雪, 潔白的雪片,飄灑紛飛, 像個頑皮的孩子, 纏你繞我嬉戲。 你佇立曠野...
    梅子的山園閱讀 436評論 1 3
  • 又到年底了,好多人問我年終總結(jié)如何寫?我自己結(jié)合多年的工作經(jīng)驗說下自己得想法和建議,以供大家參考。在剛開始工作的那...
    土司阿哈閱讀 11,564評論 2 28
  • 清晨的光線叫醒了我, 推開窗,新鮮的空氣頓時涌入, 啊,新的一天又來了! 我的心情如陽光一樣燦。 不論做什么事, ...
    Ulrica一tf閱讀 271評論 1 1

友情鏈接更多精彩內(nèi)容