控制服务器内存使用情况的步骤

来自 JVM 的 OutOfMemoryExceptions 可以停止 InterChange Server Express。要减少这样的事件,可以使用 InterChange Server Express 中的“内存检查器”功能部件来在达到内存用量的预先确定级别时暂停连接器,以确保不将新事件传递至连接器,但仍允许连接器处理来自 InterChange Server Express 的暂挂服务调用请求。这样可以减少内存用量。内存检查功能部件的参数还可以控制将事件从所有连接器传递至 InterChange Server Express 的速度,以提供对流的更精确的控制。

注:
内存检查器功能部件也会对 InterChange Server Express 服务器的性能造成负面影响,应谨慎使用。首先尝试流量控制的其它方法,而将内存检查器功能部件仅用作解决内存问题的最后一个解决方案。

执行下列步骤来实现内存检查:

  1. 将以下参数作为 Java 属性参数(-D 选项)添加至 InterChange Server Express 启动脚本文件:
    CW_MEMORY_MAX 
     

    此值确定允许 InterChange Server Express 使用的最大堆内存。它应与在 InterChange Server Express 启动脚本中以兆字节指定的 JVM 最大堆大小的值(参数 -mx)相等。例如:

    -DCW_MEMORY_MAX=512m
     

    对于 OS/400,服务器启动脚本的位置是 /QIBM/UserData/WBIServer43/ServerInstanceName/bin/start_server.sh。因为 OS/400 管理虚拟存储器中 InterChange Server Express 的 JVM 内存使用情况,所以缺省情况下,已除去此启动脚本中的最大堆大小。然而,InterChange Server 仍可能从连接器接收到比它可以处理的更多的事件。这可能导致 JVM 内存增加,因而降低性能。因为在 OS/400 上没有 -mx 参数,所以您必须监视“编辑配置”面板的“常规”选项卡的“内存总计”字段(请参阅下面的“InterChange Server 组件管理”视图)。当 InterChange Server 正常运行时,您为 CW_MEMORY_MAX 选择的值应稍大于“内存总计”字段的范围。

  2. 通过执行下列操作,使用系统管理器来定制服务器内存用量:

Copyright IBM Corp. 2004