第1章 问题描述

niEAP Report在运行的时候会创建并打开一定数量的实例缓存文件(默认的最大缓存数为1000),如果系统中同时运行的其他程序也打开一些文件,就有可能超出系统同时打开文件数的限制,此时就会出现“Too many open files”错误。这个错误有可能由UniEAP Report引起,也有可能由其他程序引起。

第2章 解决办法

2.1 调整操作系统设置

Linux操作系统在系统和用户两个级别对最大打开文件数进行了限制。

2.1.1 系统级设置

系统级设置对所有用户有效。可以通过两种方式查看系统最大文件数限制:

(1) cat /proc/sys/fs/file-max。

(2) sysctl –a,查看结果中fs.file-max项的值。

如果需要增加配置数量,就修改/etc/sysctl.conf文件,配置fs.file-max属性,如果该属性不存在则添加。

配置完成后要使用sysctl –p命令使配置生效。

2.1.2 用户级设置:

Linux限制每个登录用户的可连接文件数。可通过 ulimit -n来查看当前有效设置。如果想修改这个值就使用 ulimit -n 命令。

对于文件描述符增加的比例,资料推荐是以2的幂次为参考。如当前文件描述符数量是1024,可增加到2048,如果不够,可设置到4096,依此类推。

2.2 调整WebLogic设置

WebLogic中也有对于最大打开文件数的配置,如果是使用WebLogic部署服务,则还需要设置${SERVER_DIR}/common/bin/commEnv.sh文件中的值,如:ulimit –n 4096。${SERVER_DIR}为WebLogic的安装目录。

results matching ""

    No results matching ""

    results matching ""

      No results matching ""