2014-11-06 108 views
0

我在Glassfish服務器中配置了JDBC池。glassfish服務器中的JDBC連接池

Max pool size=500 , Steady pool size=100 , pool resize quantity=8, idle-time-out-in-seconds=300 . 

做更多的研究後,我才知道,後IDEL-超時,在秒一些活動的會話(池大小調整數量)從池中取出,如果池的大小比穩定更游泳池大小。

假設現在的服務器啓動和游泳池有100個連接,並有對服務器的請求,在這種情況下,連接將變得空閒,但由於池的大小是100一樣穩定池課程,會非活動會話永遠不會從池中移除?

回答

0

假設現在的服務器啓動和游泳池有100個連接和 有到服務器的請求,在這種情況下,連接將 成爲空閒,但由於池的大小是100一樣穩定池 會話,將不會從池中刪除非活動會話嗎?

不活動的連接將從池中刪除,但會重新創建連接以確保池中的最小連接數(由穩定池大小設置指示)可用。

Oracle docs

空閒超時:以秒爲最大的時間,一個連接可以保留在池中 閒置。在此之後,游泳池可以關閉此連接。 此屬性不控制數據庫 服務器上的連接超時。

確保您可以激活對JDBC連接池的監視。要執行此操作,請打開Glassfish Admin UI並導航至server-config - >Monitoring。啓用監控服務並將「JDBC連接池」的級別設置爲高。然後導航至server(Glassfish Admin UI左上角菜單中的第二項) - >Monitor - >Resources,然後選擇您的連接池。您可以看到有多少個連接已打開,關閉,釋放和超時。

參見: