我從來都這樣說:不是所有的應用都要采用連結池,一般的輕載用了連結池反而會降低效率,要用什麼方式連結,完全看你的系統瓶頸.
一個普通的連結過程中,因為Connection一般要用到本地方法,這些初始化是非常 耗用系統資源的.連結初始化,執行SQL語句,關閉連結在一次普通的連結中總的資源分配應該是65,10,25,當然不是這麼精確,只是為了說明在一次連結中真正執行語消耗的資源是很少的.
如果你的服務器平均每5分種才有一次連結,你當然只用這種普通連結,因為整個一次連結過程才0.0幾秒,你不必要再讓連結池在余下的4.9幾秒中也開著消耗資源,但如果每秒種有10次連結,這時普通連結消耗的初始化資源就很高了,用連結池就能顯示它的優勢.
所以到底采用什麼方式連接,完全要根據你的應用,而且要進行實實在在的並發仿真測試.不要看到書上說什麼方式好就相信,真正的構架一個平台是一種藝術而不只是一種技術,要多方面綜合測試找到最佳的組合.很多陷井並不是技術所能發現的.比如你查看你的JVM還有很多空閒資源,但系統卻已經崩潰了.因為象連結初始化這種資源消耗在本地方法中,JVM是反映不出來的,但卻在同一物理內存中,還有很多這樣的陷井,重要的是經驗和測試!