JVM から OutOfMemoryExceptions が出されると、InterChange Server Express が停止する場合があります。この状況が発生するのを防ぐため、InterChange Server Express の「メモリー・チェッカー」機能を使用して、メモリーの使用量が所定のレベルに達したときにコネクターを一時停止させることができます。これにより、コネクターに新しいイベントはデリバリーされなくなりますが、InterChange Server Express からの保留中のサービス呼び出し要求は処理されます。これによってメモリー使用量を減らすことができます。メモリー・チェック機能のパラメーターを使用すると、すべてのコネクターから InterChange Server Express にデリバリーされるイベントの速度を制御して、フローをきめ細かく制御できます。
メモリー・チェック機能を実装するには、以下の手順を実行します。
CW_MEMORY_MAX
この値は、InterChange Server Express が使用できるヒープ・メモリーの最大量を決めます。この値は、InterChange Server Express の始動スクリプト (-mx パラメーター) に指定されている JVM 最大ヒープ・サイズと同じ値 (単位は MB) とする必要があります。例えば次のように指定します。
-DCW_MEMORY_MAX=512m
OS/400 および i5/OS の場合、サーバーの始動スクリプトのロケーションは /QIBM/UserData/WBIServer44/ServerInstanceName/bin/start_server.sh です。OS/400 および i5/OS は仮想ストレージにある InterChange Server Express の JVM メモリー使用量を管理するため、この始動スクリプトでは最大ヒープ・サイズがデフォルトで削除されています。ただし、InterChange Server が、適正に処理できる以上のイベントをコネクターから受け取ることも起こりえます。これにより、JVM メモリーの使用量が増え、パフォーマンスが低下する可能性があります。OS/400 および i5/OS には -mx パラメーターがないため、「構成を編集」パネルの「一般」タブにある「総メモリー」フィールドをモニターする必要があります (次の「InterChange Server コンポーネント管理」ビューを参照)。CW_MEMORY_MAX として選択する値は、InterChange Server が正常に稼働しているときには、「総メモリー」フィールドの範囲より若干大きくしてください。