來自 JVM 的 OutOfMemoryExceptions 可中止 InterChange Server Express。若要減少這類狀況的發生,可以使用 InterChange Server Express 中的「記憶體檢查程式」功能,在達到預先決定的記憶體用量層次時暫停連接器, 以確定不會傳送任何新事件至連接器,但仍可讓它處理 InterChange Server Express 的擱置中服務呼叫要求。 這可減少記憶體用量。記憶體檢查功能的參數也可以控制將事件從所有連接器遞送到 InterChange Server Express 的速度, 以提供更精細的流程控制。
請執行下列步驟,以實作記憶體檢查:
CW_MEMORY_MAX
此值決定是否容許 InterChange Server Express 使用資料堆記憶體上限。 此值應與 InterChange Server Express 啟動 Script 中所指定的 JVM 資料堆大小上限 (-mx 參數) 相同。 例如:
-DCW_MEMORY_MAX=512m
若為 OS/400,伺服器啟動 Script 的位置是 /QIBM/UserData/WBIServer43/ServerInstanceName/bin/start_server.sh。因為 OS/400 管理 InterChange Server Express 在虛擬儲存體中的 JVM 記憶體用量, 所以依預設已移除這個啟動 Script 中的資料堆大小上限。 不過,InterChange Server 仍有可能從它足以處理的連接器收到更多的事件。 這可能導致 JVM 記憶體成長,因而降低效能。 因為 OS/400 上沒有 -mx 參數, 所以您必須監視「編輯配置」畫面的「一般」標籤的「記憶體總量」欄位 (請參閱底下的「InterChange Server 元件管理」檢視畫面)。 當 InterChange Server 正常執行時,您選給 CW_MEMORY_MAX 的值應該稍微大於「記憶體總量」欄位的範圍。