修改打开文件的句柄数限制

来源:互联网 发布:网络水军价格 报价 编辑:程序博客网 时间:2024/04/28 04:48

句柄数过低会导致以下错误:

Caused by: org.apache.mina.core.RuntimeIoException: Failed to open a selector.
at org.apache.mina.transport.socket.nio.NioProcessor.<init>(NioProcessor.java:61) ~[mina-core-2.0.4-bundle.jar:na]
... 45 common frames omitted
Caused by: java.io.IOException: Too many open files
at sun.nio.ch.EPollArrayWrapper.epollCreate(Native Method) ~[na:1.6.0_20]
at sun.nio.ch.EPollArrayWrapper.<init>(EPollArrayWrapper.java:69) ~[na:1.6.0_20]
at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:52) ~[na:1.6.0_20]
at sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:18) ~[na:1.6.0_20]
at java.nio.channels.Selector.open(Selector.java:209) ~[na:1.6.0_20]
at org.apache.mina.transport.socket.nio.NioProcessor.<init>(NioProcessor.java:59) ~[mina-core-2.0.4-bundle.jar:na]
... 45 common frames omitted


查看打开文件的句柄数:

#ulimit -n

修改打开文件的句柄数:

#vim /etc/security/limits.conf

添加内容,注意中间要保证是空格而不是不可见字符,如果修改重新登陆后不生效,多半是由于中间有不可见字符的问题:

*      soft      nofile    65535
*      hard      nofile    65535


注:

查看某个进程开了那些句柄:
#lsof -p pid    
查看某个进程开了多少个句柄:
#lsof -p pid |wc -l
看某个文件/目录被什么进程占用了,显示已打开该目录或文件的所有进程信息:
#lsof  path/filename    

原创粉丝点击