WebSphere WebSphere Enterprise Service Bus, Version 6.0.1 作業系統: AIX, HP-UX, Linux, Solaris, Windows

連線儲存區設定

您可以在管理主控台的「連線儲存區內容」畫面中,變更連線儲存區的各種內容值。

用途

「連線儲存區設定」畫面可用來指派連線儲存區的一般內容值。您可以編輯許多內容,例如逾時、清除原則和連線限制。

「配置」標籤

連線逾時值

指定以秒為單位的間隔,在這個間隔之後,連線要求會發生逾時,且會擲出 ConnectionWaitTimeoutException

這個值指示當可用儲存區中沒有可用的連線且不能建立新連線(通常是因為已到達特定連線儲存區中的連線數目上限)時,連線要求的等待時間(秒)。比方說,如果連線逾時值設定為 300,且使用中的連線數目已達上限,儲存區管理程式就會在 300 秒內等待實體連線成為可以使用。如果在這段時間內,沒有可用的實體連線,儲存區管理程式就會起始 ConnectionWaitTimeout。 重試 getConnection() 方法通常沒有意義;如果需要較長的等待時間,您應該增加「連線逾時」設定值。 如果應用程式捕捉到 ConnectionWaitTimeout 異常狀況,管理者應該檢視預期的應用程式連線儲存區用法,再據此調整連線儲存區和資料庫。

如果連線逾時值設成 0,儲存區管理程式會一直等到有可用連線為止。 當應用程式完成交易且將連線傳回儲存區時,或當連線數目降到連線數目上限以下,因而可以建立新的實體連線之時,便會有可用連線。

如果將連線數目上限設成 0 來啟用無限的實體連線數目,系統就不會處理連線逾時值。
資料類型 Integer
單位
預設值 180
範圍 0 到最大整數
連線數目上限

指定這個儲存區中所能建立的實體連線數目上限。

這些是對後端資源的實體連線。 達到這個數目之後,不會建立任何新的實體連線,且要求者將等到目前使用中的實體連線回到儲存區,或擲出 ConnectionWaitTimeout 異常狀況為止。

比方說,如果連線數目上限設定為 5,且有五個實體連線在使用中,儲存區管理程式就會在連線逾時值所指定的時間內,等待實體連線變成可以使用。

如果連線數目上限設成 0,連線儲存區可以無限增大。 這也會有忽略連線逾時值的副作用。

如果有多個獨立式應用程式伺服器使用相同的資料來源,則每個應用程式伺服器都會有一個儲存區。 如果使用複本,則每一個複本都會有一個資料儲存區。 當配置資料庫連線數目上限時,知道資料儲存區的數目非常重要。

您可以利用 Tivoli 效能檢視器來尋找儲存區中的最佳連線數目。 如果並行等待者的數目大於 0,但 CPU 負荷沒有接近 100%,請考慮增加連線儲存區大小。 如果「使用百分比」值始終比正常工作量低,請考慮減少儲存區中的連線數目。
資料類型 Integer
預設值 10
範圍 0 到最大整數
連線數目下限

指定要維護的實體連線數目下限。

如果連線儲存區大小等於或小於連線儲存區大小下限,未用逾時值執行緒便不會捨棄實體連線。 不過,儲存區不會單獨建立連線,以確保能夠維護連線儲存區大小下限。 另外,如果您設定了存在逾時值,不論儲存區大小下限為何,都一律會捨棄經歷時間到期的連線。

比方說,如果連線數目下限設定為 3,且已建立一個實體連線,未用逾時值執行緒就不會捨棄這個連線。 在相同記號之下,執行緒也不會自動建立兩個額外的實體連線來達到連線數目下限設定。
資料類型 Integer
預設值 1
範圍 0 到最大整數
執行間隔時間

指定儲存區維護執行緒的執行間隔(秒)。

比方說,如果執行間隔時間設成 60,儲存區維護執行緒就會每隔 60 秒執行一次。「執行間隔時間」間隔會影響到「未用逾時值」和「存在逾時值」設定的精確度。間隔越小,精確度就越高。如果啟用了儲存區維護執行緒,請將執行間隔時間值設成小於未用逾時值和存在逾時值。 當儲存區維護執行緒執行時,它會捨棄任何未使用的時間比「未用逾時值」所指定的時間值久的連線, 直到到達「連線數目下限」所指定的連線數目為止。 儲存區維護執行緒也會捨棄任何作用時間比存在逾時值所指定的時間值長的連線。

「執行間隔時間」間隔也會影響效能。較小的間隔表示儲存區維護執行緒執行頻率比較高,會降低效能。

如果要停用儲存區維護執行緒,請將執行間隔時間設成 0,或是將未用逾時值和存在逾時值兩者都設成 0。停用儲存區維護執行緒的建議方法是將執行間隔時間設成 0,在這種情況下,系統不會處理未用逾時值和存在逾時值。 不過,如果未用逾時值和存在逾時值都設成 0,雖然會執行儲存區維護執行緒,但這時只會捨棄因非零逾時值而發生逾時的實體連線。
資料類型 Integer
單位
預設值 180
範圍 0 到最大整數
未用逾時值

指定以秒表示的間隔,在這個間隔後,會捨棄未使用或閒置的連線。

請將未用逾時值設成比執行間隔時間值高,以得到最佳效能。只有在現行連線數目超出連線數目下限設定時,才會捨棄未使用的實體連線。 比方說,如果未用逾時值設成 120,且啟用了儲存區維護執行緒(執行間隔時間不是 0),這時會捨棄任何未使用達 2 分鐘的實體連線。 請注意,這個逾時值的精確度以及效能都會受到「執行間隔時間」值的影響。 如果需要詳細資訊,請參閱「執行間隔時間」。

資料類型 Integer
單位
預設值 1800
範圍 0 到最大整數
存在逾時值

指定捨棄實體連線之前的間隔(秒)。

將「存在逾時值」設成 0 時,可支援將作用中實體連線無限期留在儲存區中。請將存在逾時值設成比執行間隔時間值高,以得到最佳效能。比方說,如果存在逾時值設成 1200,且執行間隔時間值不是 0,這時會捨棄任何存在時間達 1200 秒(20 分鐘)的實體連線。 請注意,這個逾時值的精確度以及效能都會受到「執行間隔時間」值的影響。 如果需要詳細資訊,請參閱「執行間隔時間」。

資料類型 Integer
單位
預設值 0
範圍 0 到最大整數
清除原則

指定在偵測到舊連線或嚴重連線錯誤時,如何清除連線。

有效值如下:
  • EntirePool:儲存區中的所有連線都會標示為停擺。任何不在使用中的連線都會立即關閉。 在該連線的下一項作業期間,會關閉使用中的連線,並發出停擺連線異常狀況。從應用程式發出的後續 getConnection() 要求會開啟新的資料庫連線。 當使用這項清除原則時,也有可能發生不必要地將儲存區中未停擺之部分連線關閉的情況。 不過,很少發生這種情況。 在大部分的情況下,EntirePool 的清除原則是最佳選擇。
  • FailingConnectionOnly:只會關閉造成連線停擺異常狀況的連線。 雖然這個設定會消除不必要地關閉有效連線的可能性,但它會使從應用程式視景回復的作業變成比較複雜。 由於只關閉目前失敗的連線,因此,應用程式所發出的下一項 getConnection() 要求很可能會傳回儲存區中已停擺的連線,而造成更多連線停擺異常狀況。連線前置測試功能會試圖將應用程式和無效的儲存區連線隔離。 當後端資源(如資料庫)懸置時,可用儲存區中就可能會有無效的儲存連線。 當清除原則是 failingConnectionOnly 時,也就是只移除儲存區中的失敗連線時,特別是如此。 依失敗而定,儲存區中的剩餘連線有可能無效。
資料類型 String
預設值 EntirePool
相關工作
設定連線儲存區的一般內容

Reference topic

使用條款 | 此頁的評等

「時間戳記」圖示前次更新: 5 Mar 2006
http://publib.boulder.ibm.com/infocenter/dmndhelp/v6rxmx/index.jsp?topic=/com.ibm.websphere.wesb.doc.nl1_6.0.1\doc\rdep_connpoolsettings.html

(C) Copyright IBM Corporation 2005. All Rights Reserved.
本資訊中心採用 Eclipse 技術。(http://www.eclipse.org)