Mac Intellij Application run error for too many file open or 解决文件打开数过多

来源:互联网 发布:sql sum多个字段求和 编辑:程序博客网 时间:2024/05/18 23:56
backup:
   linux下有有文件限制,结果文件数操作最大限制,导致程序异常:问题是程序中有个静态方法打开文件时忘记关闭。两种解决方法,一是设置linux的最大文件打开数量(无法根本解决问题),二是解决程序中的bugs,即消除有问题的代码。

第一次解决 
解决: 
方法一、增大系统打开文件的数量(无法根本解决问题)、 

   1、默认linux同时最大打开文件数量为1024个,用命令查看如下:ulimit -a:查看系统上受限资源的设置(open files (-n) 1024):

   2、可以修改同时打开文件的最大数基本可以解决:ulimit -n 4096 


在出现Too many open files问题后,首先得找出主要原因。最大的可能是打开的文件或是socket没有正常关闭。为了定位问题是否由Java进程引起,通过Java进程号查看当前进程占用文件描述符情况: 

  1. lsof -p $java_pid 每个文件描述符的具体属性  
  2. lsof -p $java_pid | wc -l  当前Java进程file descriptor table中FD的总量  


0 0
原创粉丝点击