有一次在客户的一个weblogic系统,我在shell环境变量明明设unlimited的值是65535,但是他日志死活都报too many open file。到底设置到底生效了没有?还是系统的压力真的那么大?lsof看应该是没那么大。就不知道怎么查那个weblogic的JVM进程的unlimited值是多少呢?
原来cat /proc/PID/limits可以知道某个进程的unlimited值!例如:

[twistman@localhost bin]$ cat /proc/6020/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size unlimited unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 8191 8191 processes
Max open files 1024 1024 files
Max locked memory 32768 32768 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 8191 8191 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0

文档里说RHEL 4 and 5 and SLES 9, 10, and 11的大版本都测试过适用!我在RHEL 5.4、5.5都测试过正常。
现在在websphere的Linux文档里看到 。IBM威武