Too many open files问题解决

Posted wanghongsen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Too many open files问题解决相关的知识,希望对你有一定的参考价值。

问题描述:java工程,启动tomcat后发现catalina.out启动日志 报错“Too many open files”

原因:句柄数超出系统限制。

句柄含义:不单是文件,也包括打开的通讯链接(比如socket),正在监听的端口等等

解决:ulimit -a 可以查看当前系统设置的最大句柄数是多少,如下图 open files即是最大句柄数设置

技术图片

 

查看全部进程占用句柄数总和:lsof|awk ‘{print $2}‘|wc -l

查看某一个进程占用句柄数: ls -l /proc/pid(例如10124)/fd/ | wc -l

查看系统中进程打开文件数的一个排序:lsof -n |awk ‘{print $2}‘|sort|uniq -c |sort -nr|more

技术图片

 

 

 

如果总和超过最大句柄数设置,则设置最大句柄数即可,命令如下

ulimit –n 65535  设置最大句柄数是65535

可以再次输入ulimit -a 查看确认是否生效,如下图

技术图片

生效,解决! 

以上是关于Too many open files问题解决的主要内容,如果未能解决你的问题,请参考以下文章