使用連結池的意義
發(fā)表時間:2024-02-14 來源:明輝站整理相關軟件相關文章人氣:
[摘要]我從來都這樣說:不是所有的應用都要采用連結池,一般的輕載用了連結池反而會降低效率,要用什么方式連結,完全看你的系統(tǒng)瓶頸. 一個普通的連結過程中,因為Connection一般要用到本地方法,這些初始化是非常 耗用系統(tǒng)資源的.連結初始化,執(zhí)行SQL語句,關閉連結在一次普通的連結中總的資源分配應該是65...
我從來都這樣說:不是所有的應用都要采用連結池,一般的輕載用了連結池反而會降低效率,要用什么方式連結,完全看你的系統(tǒng)瓶頸.
一個普通的連結過程中,因為Connection一般要用到本地方法,這些初始化是非常 耗用系統(tǒng)資源的.連結初始化,執(zhí)行SQL語句,關閉連結在一次普通的連結中總的資源分配應該是65,10,25,當然不是這么精確,只是為了說明在一次連結中真正執(zhí)行語消耗的資源是很少的.
如果你的服務器平均每5分種才有一次連結,你當然只用這種普通連結,因為整個一次連結過程才0.0幾秒,你不必要再讓連結池在余下的4.9幾秒中也開著消耗資源,但如果每秒種有10次連結,這時普通連結消耗的初始化資源就很高了,用連結池就能顯示它的優(yōu)勢.
所以到底采用什么方式連結,完全要根據(jù)你的應用,而且要進行實實在在的并發(fā)仿真測試.不要看到書上說什么方式好就相信,真正的構架一個平臺是一種藝術而不只是一種技術,要多方面綜合測試找到最佳的組合.很多陷井并不是技術所能發(fā)現(xiàn)的.比如你查看你的JVM還有很多空閑資源,但系統(tǒng)卻已經(jīng)崩潰了.因為象連結初始化這種資源消耗在本地方法中,JVM是反映不出來的,但卻在同一物理內(nèi)存中,還有很多這樣的陷井,重要的是經(jīng)驗和測試!