數據庫連接池的工作機制是什么?


答案:數據庫連接是一種非常珍貴且有限的資源,尤其在多用戶的網絡應用環境中,更是如此。對數據庫連接管理的好壞會直接影響整個系統

的性能:一是建立與數據庫的鏈接是一個耗時的操作,在頁面應用中,如果每次用戶的請求都是需要建立新的數據庫連接,那么響應時間就會很長

,嚴重影響用戶的體驗;而是數據庫的連接個數都有限制的,如果管理不好,用戶經常建立與數據庫的連接卻忘記釋放,運行時間久了,數據庫的連接

資源就會耗盡,當有新的用戶需要訪問數據庫的時候,此時就需要等待很長的一段時間直到有用戶釋放連接資源才能訪問數據,這對系統的可用性

有着嚴重的影響。因此,管理好數據庫的連接資源對應用系統尤其是頁面應用系統是非常重要的。

  數據庫連接池負責分配,管理並釋放數據庫連接,它允許應用程序重復使用一個現有的數據庫連接,而不再是重新建立一個新的數據庫連接,同時,

它還負責釋放空閑時間超過最大空閑時間的數據庫連接,避免因為沒有釋放數據庫連接而引起的數據庫連接遺漏。

  在J2EE中,服務器在啟動的時候會創建一定數量的池連接,並一直維持不少於此數目的池連接。當客戶程序需要訪問數據庫的時候,就可以直接從

池中獲取與數據庫的連接(獲取一個空閑的連接),而不用去創建一個新的連接,同時標記該連接為忙狀態。當使用完畢后再把該連接標記為空閑

狀態,這樣其他用戶就可以使用這個連接了。如果當前沒有空閑的連接,那么服務器就會根據配置參數在池中創建一定數量的連接。采用這種方法

對數據庫連接進行管理后可以大幅提高用戶的響應時間,提高運行效率。另一方面,為了提高數據庫操作的性能,數據庫連接池會釋放空閑時間超過

最大空閑時間的數據庫連接,以避免因為沒有釋放數據庫連接而引起的數據庫連接遺漏。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM