2009-07-22 74 views
0

我已經研究了Websphere Application Server Express v6.1的Web連接文檔「連接生命週期」,並且已經在Web上搜索了以下答案。Websphere Application Server 6.1連接池問題 - 當AS無法獲得連接時會發生什麼

連接池狀態

  1. 測試前的現有池連接被選擇 - 重試間隔爲0秒
  2. 測試前被選擇新的連接 - 重試#是零和重試間隔是0
  3. 預測試SQL字符串是「選擇‘你好’,從雙」

如果預測試失敗,會出現什麼情況和

  1. 沒有連接在 inFreePool或InUse狀態?
  2. inFreePool狀態下有連接嗎?

我指的是設置在 「數據源>DATA_SOURCE> WebSphere Application Server的數據源」

回答

0

應用程序調用的getConnection

  1. 如果有連接inFreePool然後它使用預測試SQL字符串進行測試,並且如果它通過測試,則會將其傳遞給應用程序 。
    1. 如果測試失敗,則根據清除策略清除池。
      1. 如果清除策略爲EntirePool則清除整個空閒池並獲取並測試新的連接。
      2. 如果清除策略爲failingConnectionOnly則丟棄失敗的連接並從池中獲取另一個連接並進行測試。
      3. 如果池中沒有連接,則會創建並測試新的連接。如果新連接失敗,則引發異常(類型?)。

  2. 如果有空閒池,然後將一個新的連接被創建,測試,如果通過測試交給應用程序沒有任何連接。如果新連接失敗,則拋出異常。

相關問題