Linux部署Java应用Too many open files解决方案

来源:互联网 发布:mysql安装失败 编辑:程序博客网 时间:2024/06/05 00:41

错误:java.io.IOException: Too many open files

错误原因:java使用nio在linux下会不断调用linux创建pipe(貌似是nio的bug[待考证]),linux下默认用户只能打开1024个连接文件,从而产生Too many open files的异常

解决方案:设置linux用户打开连接文件数

具体如下:

查看系统允许打开的最大文件数 

#nano /proc/sys/fs/file-max 

发现足够大了。 



查看每个用户允许打开的最大文件数 

ulimit -a 

发现系统默认的是open files (-n) 1024,问题就出现在这里。 

在系统文件/etc/security/limits.conf中修改这个数量限制, 

在文件中加入内容: 

* soft nofile 65536 
* hard nofile 65536 

0 0