天天看點

連接配接池的作用

首先,連接配接池的作用就是為了提高性能。

連接配接池的作用:連接配接池是将已經建立好的連接配接儲存在池中,當有請求來時,直接使用已經建立好的連接配接對資料庫進行通路。這樣省略了建立連接配接和銷毀連接配接的過程。這樣性能上得到了提高。

基本原理是這樣的:

(1)建立資料庫連接配接池對象(伺服器啟動)。

(2)按照事先指定的參數建立初始數量的資料庫連接配接(即:空閑連接配接數)。

(3)對于一個資料庫通路請求,直接從連接配接池中得到一個連接配接。如果資料庫連接配接池對象中沒有空閑的連接配接,且連接配接數沒有達到最大(即:最大活躍連接配接數),建立一個新的資料庫連接配接。

(4)存取資料庫。

(5)關閉資料庫,釋放所有資料庫連接配接(此時的關閉資料庫連接配接,并非真正關閉,而是将其放入空閑隊列中。如實際空閑連接配接數大于初始空閑連接配接數則釋放連接配接)。

(6)釋放資料庫連接配接池對象(伺服器停止、維護期間,釋放資料庫連接配接池對象,并釋放所有連接配接)。

1 .連接配接池的概念和為什麼要使用連接配接池?

連接配接池放了N個Connection對象,本質上放在記憶體當中,在記憶體中劃出一塊緩存對象,應用程式每次從池裡獲得Connection對象,而不是直接從資料裡獲得,這樣不占用伺服器的記憶體資源。

2 .如果不使用連接配接池會出現的情況:

a.占用伺服器的記憶體資源

b.導緻伺服器的速度非常慢

3 .應用連接配接池的三種方式:

a.自定義連接配接池

b.使用第三方連接配接池

c.使用伺服器自帶的連接配接池

連接配接池一般比直接連接配接更有優越性,因為它提高了性能的同時還儲存了寶貴的資源。在整個應用程式的使用過程,當中重複的打開直接連接配接将導緻性能的下降。而池連接配接隻在伺服器啟動時打開一次,進而消除了這種性能問題。

連接配接池主要考慮的是性能,每次擷取連接配接和釋放連接配接都有很大的工作量,會對性能有很大影響;而對資源來說起的是反作用,因為儲存一定數量的連接配接是要消耗記憶體的。應用程式每次從池裡獲得Connection對象,而不是直接從資料裡獲得,這樣不占用伺服器的記憶體資源。是以一般要建立連接配接池,而連接配接的數量要适當,不能太大,太大會過多消耗資源。(是以,考慮2個方面,一個是記憶體,另一個是資源)。

連接配接池就是為了避免重複多次的打開資料庫連接配接而造成的性能的下降和系統資源的浪費。