InterChange Server 所使用的資料庫連線數目會隨著使用型樣而有很大的變化:
表 11 彙總 InterChange Server 使用資料庫的方式。
表 11. InterChange Server 使用資料庫的方式
環境 | 資料庫用途 | 讀取 | 寫入 |
---|---|---|---|
執行時期 | 儲存庫服務 | × |
|
| 事件管理服務 | × | × |
| 交易服務 | × | × |
| 流程監視服務 | × | × |
配置時間 | 系統管理程式 | × | × |
設計時間 | 程序設計程式 | × | × |
您可以限制 InterChange Server 所使用的 DBMS 連線數目, 方法為在 InterchangeSystem.cfg 檔中配置 MAX_CONNECTIONS 參數。 您可以使用這個參數來限制連線,不論伺服器是使用一個資料來源或多個資料來源。
根據預設值,InterChange Server 會在必要時開啟連線, 而且在它們閒置時,使它們逾時。伺服器也會管理使用同一資料庫的服務之間之連線資源的共用。
除非您使用 MAX_CONNECTIONS 參數來指定數目,否則沒有連線數目上限。然而,連線限制可能存在於 DBMS 伺服器配置中。 例如,「桌面」版的 SQL Server 可能容許數目不限的連線, 但是「標準」版的 SQL Server 可能依據授權合約而具有連線限制。 根據預設值,許多 DBMS 伺服器具有低預設連線限制。在設定 InterChange Server 的連線限制之前, 請檢查 DBMS 配置。
若要控制 InterChange Server 所使用的 DBMS 連線數目, 請編輯 InterChange.cfg 檔。在 DB_CONNECTIVITY 區段中輸入 MAX_CONNECTIONS 的值。 此值會控管 InterChange Server 一次可以具有的 DBMS 連線總數。
下列配置檔項目將 InterChange Server 連線數目限制為 20:
[DB_CONNECTIVITY] MAX_CONNECTIONS = 20
如果 InterChange Server 需要一個連線, 但是開啟的連線數目已達到最大值,則它會嘗試利用最早使用演算法,來釋放現有的連線。
在 InterChangeSystem.cfg 檔的 DB_CONNECTIVITY 區段中設定 MAX_CONNECTIONS 參數,會對所有資料來源套用連線限制。 當跨多個資料來源分割工作負荷時,該參數不適用, 因為您可能想要在某個資料來源設定連線限制,但不想要在另一個資料來源上設定連線限制。 此外,因為 InterChange Server 並不會跨資料來源來接管連線, 所以某個服務可以使用所有配置的連線,不留下任何連線供其他服務使用。
在分割的環境中,您可以在特定資料來源的連線上設定限制,方法為限制每一個服務進行的連線。 比方說,如果儲存庫、事件管理服務、交易服務和流程監視服務都是使用個別的資料來源, 則您可以對每一個資料來源指定不同的最大值,如下所示:
DB2 |
---|
[EVENT_MANAGEMENT] DATA_SOURCE_NAME = jdbc:db2:EventsDB MAX_CONNECTIONS = 20 [TRANSACTIONS] DATA_SOURCE_NAME = jdbc:db2:TransDB MAX_CONNECTIONS = 30 [REPOSITORY] DATA_SOURCE_NAME = jdbc:db2:ReposDB MAX_CONNECTIONS = 50 [FLOW_MONITORING] DATA_SOURCE_NAME = jdbc:db2:FlowDB MAX_CONNECTIONS = 20 |
Oracle |
---|
[EVENT_MANAGEMENT] DATA_SOURCE_NAME = jdbc:ibm-crossworlds:oracle://@server1:1521;SID=EventsDB MAX_CONNECTIONS = 20 [TRANSACTIONS] DATA_SOURCE_NAME = jdbc:ibm-crossworlds:oracle://@server2:1521;SID=TransDB MAX_CONNECTIONS = 30 [REPOSITORY] DATA_SOURCE_NAME = jdbc:ibm-crossworlds:oracle://@server3:1521;SID=ReposDB MAX_CONNECTIONS = 50 [FLOW_MONITORING] DATA_SOURCE_NAME = jdbc:ibm-crossworlds:oracle://@server3:1521;SID=FlowDB MAX_CONNECTIONS = 20 |
您可以對某個服務設定 MAX_CONNECTIONS 參數,但不對其他服務設定它。