數據庫連接池工作原理

在實際應用開發中,特別是在WEB應用系統中,如果JSP、Servlet或EJB使用JDBC直接訪問數據庫中的數據,每一次數據訪問請求都必須經歷建立數據庫連接、打開數據庫、存取數據和關閉數據庫連接等步驟,而連接並打開數據庫是一件既消耗資源又費時的工作,如果頻繁發生這種數據庫操作,系統的性能必然會急劇下降,甚至會導致系統崩潰。數據庫連接池技術是解決這個問題最常用的方法,在許多應用程序服務器(例如:Weblogic,WebSphere,JBoss)中,基本都提供了這項技術,無需自己編程,但是,深入瞭解這項技術是非常必要的。


數據庫連接池技術的思想非常簡單,將數據庫連接作爲對象存儲在一個Vector對象中,一旦數據庫連接建立後,不同的數據庫訪問請求就可以共享這些連接,這樣,通過複用這些已經建立的數據庫連接,可以克服上述缺點,極大地節省系統資源和時間。


數據庫連接池的主要操作如下:
(1)建立數據庫連接池對象(服務器啓動)。
(2)按照事先指定的參數創建初始數量的數據庫連接(即:空閒連接數)。
(3)對於一個數據庫訪問請求,直接從連接池中得到一個連接。如果數據庫連接池對象中沒有空閒的連接,且連接數沒有達到最大(即:最大活躍連接數),創建一個新的數據庫連接。
(4)存取數據庫。
(5)關閉數據庫,釋放所有數據庫連接(此時的關閉數據庫連接,並非真正關閉,而是將其放入空閒隊列中。如實際空閒連接數大於初始空閒連接數則釋放連接)。
(6)釋放數據庫連接池對象(服務器停止、維護期間,釋放數據庫連接池對象,並釋放所有連接)。

 

 

轉載說明

文字轉自:http://zhidao.baidu.com/question/488393749.html

圖片轉自:http://wenku.baidu.com/view/074815d033d4b14e852468c6.html

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章