博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux下tomcat之too many open files
阅读量:5154 次
发布时间:2019-06-13

本文共 734 字,大约阅读时间需要 2 分钟。

一、问题表象:

  程序日志报错:java.io.IOException: Too many open files at 

 

二、解决方案:

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

    cat /proc/sys/fs/file-max
  2、查看每个用户允许打开的最大文件数:
    ulimit -a
  3、发现系统默认的是open files (-n) 1024,问题就出现在这里。
    在系统文件/etc/security/limits.conf中修改这个数量限制, 在文件中加入内容:
      * soft nofile 65536
      * hard nofile 65536
    另外方法:
      1、使用ps -ef |grep java (java代表你程序,查看你程序进程) 查看你的进程ID,记录ID号,假设进程ID为12
      2、使用lsof -p 12 | wc -l 查看当前进程id为12的 文件操作状况
        执行该命令出现文件使用情况为 1052
      3、使用命令ulimit -a 查看每个用户允许打开的最大文件数
        发现系统默认的是open files (-n) 1024,问题就出现在这里。
      4、然后执行ulimit -n 4096
        将open files (-n) 1024 设置成open files (-n) 4096

 

摘抄自:https://www.aliyun.com/jiaocheng/120721.html

转载于:https://www.cnblogs.com/chendeming/p/9024425.html

你可能感兴趣的文章
C++ STL stack、queue和vector的使用
查看>>
使用Reporting Services时遇到的小问题
查看>>
约瑟夫问题
查看>>
Arduino 报错总结
查看>>
树莓派Android Things物联网开发:树莓派GPIO引脚图
查看>>
矩阵快速幂---BestCoder Round#8 1002
查看>>
js兼容公用方法
查看>>
如何将应用完美迁移至Android P版本
查看>>
【转】清空mysql一个库中的所有表的数据
查看>>
基于wxPython的python代码统计工具
查看>>
淘宝JAVA中间件Diamond详解(一)---简介&快速使用
查看>>
Hadoop HBase概念学习系列之HBase里的宽表设计概念(表设计)(二十七)
查看>>
Kettle学习系列之Kettle能做什么?(三)
查看>>
Day03:Selenium,BeautifulSoup4
查看>>
awk变量
查看>>
mysql_对于DQL 的简单举例
查看>>
35. Search Insert Position(C++)
查看>>
[毕业生的商业软件开发之路]C#异常处理
查看>>
一些php文件函数
查看>>
有关快速幂取模
查看>>