NuGenesis LMS 中的 Java 堆空间调谐 - WKB3269
故障描述
- 用户通过 NuGenesis LMS 客户端打开文档时,可能会收到一条错误信息。
- 记录在 LMS 客户端日志文件中的这条错误信息内容为(部分)“原因:java.lang.OutOfMemoryError: Java heap space。”
- 打开较大的文档时(包含许多大尺寸和高分辨率图像的文档,或者分为许多部分的文档)更容易出现此错误。
环境
- NuGenesis 9 LMS
- NuGenesis 8 LMS
- NuGenesis 8 ELN
原因
Java Runtime Environment 无法为 LMS 服务器分配足够的内存,以便服务器执行用户请求(例如打开文档)。
解决方法
- 用记事本打开文件:驱动器:\WatersLMSServer\javaServiceWrapper\conf\wrapper-jboss.conf。
- 找到以下几行:
- # Maximum Java Heap Size(以 MB 为单位)。
- wrapper.java.maxmemory=
- wrapper.java.maxmemory 的缺省值为 1024。将该数字改为换算自 GB 的另一个数字(例如,4 GB 应换算为 4096)。
- 保存并关闭文件。
- 重新启动 NuGenesis LMS 服务器服务。
附加信息
NuGenesis LMS 服务器是在 Java Runtime Environment 中运行的 64 位应用程序。JRE 根据其初始化参数从系统中分配内存,这些内存随后将供此环境中运行的 Java 应用程序使用(对于 LMS 服务器,只有一个 Java 应用程序:LMS 服务器服务)。建议您将 JRE 对所有安装程序的堆空间分配限制提升到 4 GB,如果事实证明 4 GB 对于服务器负载而言不够用,建议您将其进一步提高。LMS 中的所有用户操作都会使用一定的内存,当不再需要内存时会释放,但是某些操作可能需要更大的内存分配。
LMS 客户端的日志文件存储在用户配置文件文件夹中的 AppData 文件夹中。如果 LMS 客户端在用户 PC 上本地运行,则 AppData 文件夹(以及 LMS 日志文件)将在此 PC 上本地存储;如果通过 Citrix 客户端运行 LMS,则日志文件位于 Citrix 服务器的用户配置文件文件夹中。如果服务器场中有多个 Citrix 服务器(并且用户被重定向到服务器场内的不同服务器),或者 Citrix 配置文件管理正在使用中,查找日志文件时可能会出现其他复杂情况。配置文件管理有多种形式,但它们通常将用户配置文件存储到中央服务器上,而不是单个 Citrix 服务器上。对于 LMS 在本地 PC 上运行的情况,以特定用户身份登录 PC 后,通过“开始”>“运行”指定以下路径可以找到日志文件:
- NuGenesis 8/9 LMS:%AppData%\Waters\NuGenesis LMS\version\Product.log
- NuGenesis 8 ELN: %AppData%\Waters\NuGenesis ELN\version\Product.log
id3269, ELN, memory, NGLMS, NGLMSLIC, NGLMSOPT, SUPNG