1
在我們的項目中,我們正在維護自己的數據庫連接池。
爲解決問題'java.sql.SQLRecoverableException: Io exception
大多數人建議使用標準連接池,如apache dbcp。連接重置期間DBConnectionPool的行爲如何
- 我想知道在連接重置期間,那些標準池機制會執行什麼邏輯?
- DBConnectionPool如何知道數據庫連接已超時?因爲我們知道conn.isClosed()在這裏沒有幫助。
- 它是每個數據庫連接將有一個與DB服務器的TCP客戶端套接字?
- 最後是可取的;每當我將連接返回到池中時;游泳池應該關閉連接;如果連接存在超過〜10分鐘,則返回? [〜10分鐘服務器端連接超時變量]
請回答我所有的問題。
你的意思是說,每當一個新的連接請求;該池將在DB上執行測試查詢(validationQuery)執行以驗證TCP狀態。如果查詢成功,則池將返回該連接? –
如果您正在使用數據庫池,則您無法控制新的連接。它決定何時創建新的連接。但是,作爲對第一個問題的回答,解釋testOnBorrow和testOnReturn可用於在將現有連接提供給用戶之前驗證現有連接的狀態。 – shazin
我的問題是,這是如何驗證:(????????????????? –