关于Linux 进程 open too many files 的问题
来源:互联网 发布:seo快速排名 编辑:程序博客网 时间:2024/06/07 08:28
有时tomcat 或 weblogic的服务里会报这样的错误,有些是建立socket连接时报出的错误。导致的直接原因是因为服务的进程打开了太多的文件或网络连接,超过了系统定义的值(系统定义的值可以用ulimit -n 来查看)。
调查可能会用到的命令:
ps -ef | grep 服务名 // 用于查找进程号
lsof -n | grep 进程号 | vim - // 查看这个进程都打开了哪些链接,都是什么状态的。
原因:
1. 可能是服务真的打开了超多的文件,不过这个可能会比较小。
2. 打开了太多的socket链接,而且没有关闭(我就遇到过大量废弃的tcp链接状态是CLOSE_WAT),因为系统默认的 net.ipv4.tcp_keepalive_time 是7200秒,也就是2小时才会断开。
3. 可能打开了太多了长链接,而且都在使用
解决方法:
1.在生产环境下, 重启是比较快速能解决的办法,但不能解决根本问题,运行一段时间后还会出现问题。
2. 调整net.ipv4.tcp_keepalive_time的参数 ,可以参照https://wsgzao.github.io/post/sysctl/
3. 调查代码里哪些使用了keepalive的链接,哪些疏忽了,没有及时关闭链接
阅读全文
0 0
- 关于Linux 进程 open too many files 的问题
- Linux 进程 Too many open files
- linux下Too many open files问题
- Linux问题 open too many files
- Linux问题 open too many files
- Linux问题 open too many files
- Linux "Too many open files" 问题分析
- Too many open files 问题的解决
- Too many open files 问题的解决
- Too many open files 问题的解决
- Too many open files 问题的解决
- too many open files 的问题
- Linux : too many open files
- Linux open too many files
- linux open too many files
- tomcat 6.0 报 “too many open files Too many open files" 问题的解决思路
- golang 进程出现too many open files的排查过程
- 解决Linux中Too many open files问题
- 移动架构24_设计模式六大原则二:里氏替换原则
- VC下使用SDL报“无法解析的外部符号 _SDL_main”
- jquery.cookie()方法的使用
- json数据合并
- Spring系列——访问MySQL
- 关于Linux 进程 open too many files 的问题
- MyBatis mapper.xml中SQL处理小于号与大于号
- c语言 m位整数中的n个最大素数
- POI使用案例01---读取excel的数据
- Kalman Filter Study (include Monte Carlo Position)
- 项目管理 第一章项目选择
- Java把文件夹打成压缩包并导出
- Java反射应用实例1
- 微信小程序实现tabs选项卡效果简单代码实例