請利用這個頁面來配置連線儲存區設定。
避免麻煩:應用程式用戶端不支援連線儲存區。應用程式用戶端會直接呼叫資料庫,並不透過資料來源。
如果您要從應用程式用戶端使用 getConnection() 要求,請利用 Rational® Application Developer 或組合工具,在應用程式用戶端部署描述子中配置 JDBC 提供者。連線是建立在應用程式用戶端和資料庫之間。
應用程式用戶端並沒有連線儲存區,但您可以在用戶端部署描述子中配置 JDBC 提供者設定。gotcha指定以秒表示的間隔,在這個間隔後,連線要求將發生逾時,而且將擲出 ConnectionWaitTimeoutException。
這個值指出在可用儲存區中沒有可用的連線且無法建立新連線時,連線要求等待的秒數。 這通常是因為已達到特定連線儲存區的連線數目上限值。
比方說,如果「連線逾時值」設為 300,且使用中的連線數目已達上限,儲存區管理員就會在 300 秒內等待可用的實體連線。 如果在這段時間內,沒有可用的實體連線,儲存區管理員就會起始 ConnectionWaitTimeout。 在大部分情況下,您不應重試 getConnection() 方法;如果需要較長的等待時間,您應該增加「連線逾時」設定值。 如果應用程式擷取到 ConnectionWaitTimeout 異常狀況,請檢閱預期的應用程式連線儲存區用法,再相應地調整連線儲存區和資料庫。
如果「連線逾時值」設成 0,儲存區管理員會一直等到有可用連線為止。 當應用程式完成交易且將連線傳回儲存區,或當連線數目降到「連線數目上限」值以下,建立新的實體連線時,便會有可用連線。
如果將「連線數目上限」設成 0,會啟用無限的實體連線數目,系統就不會處理「連線逾時值」。
| 資訊 | Value |
|---|---|
| 資料類型 | Integer |
| 單位 | 秒 |
| 預設 | 180 |
| 範圍 | 0 到最大整數 |
指定這個儲存區中所能建立的實體連線數目上限。
這些是後端資源的實體連線。 達到這個數目之後,便不會再建立任何新的實體連線。要求端將等到目前使用中的實體連線回到儲存區,或顯示 ConnectionWaitTimeoutException 錯誤為止。比方說,如果「連線數目上限」值設為 5,且有 5 個實體連線在使用中,儲存區管理員就會在「連線逾時值」所指定的時間內,等待實體連線變成可以使用。
知道有可能從後端(如 DB2® 資料庫或 CICS® 伺服器)要求連線的連線儲存區數目,有助於決定「連線數目上限」內容值。
![[AIX Solaris HP-UX Linux Windows]](../dist.gif)
對於使用相同資料來源配置或 J2C Connection Factory 配置的多個獨立式應用程式伺服器而言,每部伺服器都有個別的實體連線儲存區。
如果您複製這些相同的應用程式伺服器,WebSphere Application Server(基本)會實作每個複本的個別連線儲存區。
請考量存取相同資源的服務者數目;在執行時期,這個數目實質上是您的「連線數目上限」設定的倍數。
當服務者開始相同的 JDBC 資料來源或 J2C Connection Factory 配置時,WebSphere Application Server(基本)會針對每個服務者,實作對應的實體連線儲存區。
因此,相同的連線儲存區會個別存在每個服務者之中。
您的「連線數目上限」設定適用於每一個這些儲存區。
![[AIX Solaris HP-UX Linux Windows]](../dist.gif)
所有這些連線儲存區都對應於相同的資料來源或 Connection Factory 配置。
因此,所有這些連線儲存區有潛在可能性,同時向相同的後端資源要求連線。
每一個這些連線儲存區都適用您在這個主控台畫面上設定的單一「連線數目上限」值。
因此,設定較高的「連線數目上限」值,連線要求負載可能會使後端資源不堪負荷。
在這些服務者中需要資料來源或 Connection Factory 的每個應用程式,都有可能試圖以同步方式來使用資源。
因此,對應的連線儲存區會同時需要相同的後端連線。
請勿將「連線數目上限」設成有可能導致連線要求負載使資料庫或其他企業資訊系統 (EIS) 不堪負荷的值。
| 資訊 | Value |
|---|---|
| 資料類型 | Integer |
| 預設 | 10 |
| 範圍 | 0 到最大整數 如果「連線數目上限」設成 0,系統不會處理「連線逾時值」。 |
您可以利用「Tivoli® 效能檢視器」來尋找儲存區中的最佳連線數目。如果並行等待者的數目大於 0,但處理器負載沒有接近 100%,請考慮增加連線儲存區大小。 如果「使用百分比」值始終比正常工作量低,請考慮減少儲存區中的連線數目。
指定要維持的實體連線數目下限。
如果連線儲存區大小等於或小於連線儲存區大小下限,「未用逾時值」執行緒便不會捨棄實體連線。 不過,儲存區不會單獨建立連線,以確保能夠維護連線儲存區大小下限。 另外,如果您設定了「存在逾時值」,不論儲存區大小下限設定為何,一律會捨棄經歷時間到期的連線。
比方說,如果「連線數目下限」值設為 3,且已建立一個實體連線,「未用逾時值」執行緒就不會捨棄這個連線。 在相同記號下,執行緒也不會自動建立兩個額外的實體連線來達到連線數目下限設定。
| 資訊 | Value |
|---|---|
| 資料類型 | Integer |
| 預設 | 0 |
| 範圍 | 0 到最大整數 |
指定儲存區維護執行緒的執行間隔(秒)。
比方說,如果「執行間隔時間」設成 60,儲存區維護執行緒就會每隔 60 秒執行一次。「執行間隔時間」的間隔會影響到「未用逾時值」及「存在逾時值」這兩個設定的精確度。間隔越小,精確度就越高。如果啟用了儲存區維護執行緒,請將「執行間隔時間」值設成比「未用逾時值」和「存在逾時值」還小的值。 當儲存區維護執行緒執行時,它會捨棄任何維持未用超出「未用逾時值」所指定之時間值的連線,直到到達「連線數目下限」所指定的連線數目。 儲存區維護執行緒也會捨棄任何維持作用超過「存在逾時值」所指定時間值的連線。
「執行間隔時間」的間隔也會影響效能。較小的間隔表示儲存區維護執行緒執行頻率比較高,會降低效能。
如果要停用儲存區維護執行緒,請將「執行間隔時間」設成 0,或將「未用逾時值」和「存在逾時值」兩者都設成 0。 停用儲存區維護執行緒的建議方法是將「執行間隔時間」設成 0,系統就不會處理「未用逾時值」和「存在逾時值」。 不過,如果「未用逾時值」和「存在逾時值」都設成 0,就會執行儲存區維護執行緒。但這時會捨棄因非零逾時值而發生逾時的實體連線,以及常駐在已使用儲存區(或共用儲存區)的連線,因為它們被保留的時間已超過為「存在逾時值」所設定的時間間隔。
| 資訊 | Value |
|---|---|
| 資料類型 | Integer |
| 單位 | 秒 |
| 預設 | 180 |
| 範圍 | 0 到最大整數 |
指定以秒表示的間隔,在這個間隔後,會捨棄未使用或閒置的連線。
請將「未用逾時值」設成比「執行間隔逾時值」還高的值,以達到最佳效能。只有在現行連線數目超出連線數目下限設定時,才會捨棄未使用的實體連線。 比方說,如果未用逾時值設成 120,且啟用了儲存區維護執行緒(「執行間隔時間」不是 0),這時會捨棄任何維持未用達 2 分鐘的實體連線。
「執行間隔時間值」會影響這個逾時的精確度和效能。 如需相關資訊,請參閱執行間隔時間
| 資訊 | Value |
|---|---|
| 資料類型 | Integer |
| 單位 | 秒 |
| 預設 | 1800 |
| 範圍 | 0 到最大整數 |
指定捨棄實體連線之前的間隔(秒)。
將「存在逾時值」設成 0,支援作用中實體連線無限期留在儲存區中。 請將「存在逾時值」設成比「執行間隔逾時值」還高的值,以達到最佳效能。
比方說,如果「存在逾時值」設成 1200,且「執行間隔時間」值不是 0,這時儲存區會捨棄任何維持存在達 1200 秒(20 分鐘)的實體連線。 存在逾時到期而連線仍涉入交易是唯一例外,在完成交易且關閉連線之前,應用程式伺服器不會捨棄連線。
「執行間隔時間值」會影響這個逾時的精確度和效能。 如需相關資訊,請參閱執行間隔時間
| 資訊 | Value |
|---|---|
| 資料類型 | Integer |
| 單位 | 秒 |
| 預設 | 0 |
| 範圍 | 0 到最大整數 |
指定在偵測到舊連線或嚴重連線錯誤時如何清除連線。
有效值是 EntirePool 和 FailingConnectionOnly。
| 資訊 | Value |
|---|---|
| 資料類型 | String |
| 預設 | EntirePool |