java.io.IOException: Too many open files

来源:互联网 发布:乐视2pro相机优化 编辑:程序博客网 时间:2024/05/18 00:25

问题

昨天,阿里云的服务器出现少理的Too many open files,但用ulimit -n查到的连接是65535,而用lsof -p 进程pid查到的只有4k多,远远小于ulimit的限制,百思不得期解。

解决

查询cat /proc/进程pid/limits查到的Max open files的限制是4096,解决方法,修改
通过vi /etc/security/limits.conf修改其内容,在文件最后修改为(数值也可以自己定义):

* soft nofile 65535* hard nofile 65535* -    nproc  102400* -    nofile 102400

重启服务器,启动JAVA进程,再次使用cat /proc/进程pid/limits查到的Max open files的限制是102400,最后通过日志及现场情况确认,解决问题!