tomcat 报错 Too many open files
问题描述:
当Tomcat单节点大批量访问时,会出现:Too many open files 报错导致系统卡死或者进程直接关闭,从而影响业务。
问题原因:
进程在请求打开一个文件,实际上就是在请求句柄,但是现在进程打开的句柄已经达到了上限,已经无法打开新句柄了,所以导致系统无法在接入新的连接,或者目前连接的请求也将出现问题!
处理方法:
● 增加文件描述符
ulimit -n 65535echo 65532 > /proc/sys/fs/file-max
● 优化TCP/IP设置
echo 30 > /proc/sys/net/ipv4/tcp_fin_timeoutecho 60000 > /proc/sys/net/ipv4/tcp_keepalive_timeecho 15000 > /proc/sys/net/ipv4/tcp_keepalive_intvlecho 0 > /proc/sys/net/ipv4/tcp_window_scaling
● 其他优化
#使用更多的本地端口
echo 1024 25000 > /proc/sys/net/ipv4/ip_local_port_range
#增加更多的socket buffer内存(参考)
echo 2621143 > /proc/sys/net/core/rmem_max
echo 262143 > /proc/sys/net/core/rmem_default
echo 4096 131072 262143 > /proc/sys/net/ipv4/tcp_rmem
echo 4096 13107262143 > /proc/sys/net/ipv4/tcp_wmem
#增加运行期所需的shm内存(参考)
echo 67108864 > /proc/sys/kernel/shmmax echo 16777216 > /proc/sys/net/core/rmem_max echo 16777216 >
/proc/sys/net/core/wmem_default echo 16777216 >
/proc/sys/net/core/wmem_max echo 4096 > /proc/sys/net/core/somaxconn
echo 262143 > /proc/sys/net/core/rmem_default
#增加用户最大打开文件数(如果本身系统的数字就比这个要大就不用修改了)
#---------------修改/etc/security/limits.conf文件---------- soft nofile 32768
*hard nofile 32768
###重启后用户的最大打开文件数就变成 32768 了,当然你也可以看情况再加大。
总结:
实际情况需要根据机器的具体配置进行调整,不能直接生搬硬套,不然可能会适得其反!建议访问量较大的应用尽量使用集群方式部署!
tomcat 报错 Too many open files相关推荐
- eclipse中同步代码PULL报错checkout conflict with files的解决方法
eclipse中同步代码PULL报错checkout conflict with files的解决方法 参考文章: (1)eclipse中同步代码PULL报错checkout conflict wit ...
- tomcat报错LifecycleException的解决方案
tomcat报错LifecycleException的解决方案 参考文章: (1)tomcat报错LifecycleException的解决方案 (2)https://www.cnblogs.com/ ...
- 启动tomcat报错Caused by: org.apache.catalina.LifecycleException: No UserDatabase component
启动tomcat报错 Caused by: org.apache.catalina.LifecycleException: No UserDatabase component 替换conf/tomca ...
- tomcat报错: Error parsing HTTP request header
Error parsing HTTP request header 在服务器上面集成项目的时候,tomcat报错,在往上面查找是因为eclipse运行的tomcat和服务器上面的tomcat版本不一致 ...
- TOMCAT报错:HTTP Status 404 -
构建struts2工程师,tomcat报错: HTTP Status 404 - type Status report message description The requested resour ...
- 迅速解决!!!!!启动Tomcat报错PermGen space
启动Tomcat报错 PermGen space 内存溢出 解决方法:扩大tomcat内存 修改参数:set JAVA_OPTS=-Xms1024m -Xmx1024m -XX:PermSi ...
- 关于eclipse中web项目tomcat报错Server Tomcat v9.0 Server at localhost failed to start问题解决
第一次写博客,写个简单的好了 关于eclipse中web项目tomcat报错Server Tomcat v9.0 Server at localhost failed to start 问题 我的解决 ...
- jenkins 远程启动tomcat报错:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
异常现象: jenkins 远程启动tomcat报错:Neither the JAVA_HOME nor the JRE_HOME environment variable is defined 解决 ...
- ssm启动不报错_解决idea导入ssm项目启动tomcat报错404的问题
用idea写ssm项目,基于之前一直在用spring boot 对于idea如何运行ssm花费了一番功夫 启动tom act一直在报404 我搜了网上各种解决办法都不行,花费一天多的时间解决不了 就是 ...
最新文章
- python迷宫万花筒代码_利用广度优先遍历搜索迷宫的python源代码
- 网络编程中的大端和小端
- wxWidgets:wxWebRequest 示例
- (内联元素和块级元素)
- [note] Homebrew的介绍、安装方法与常用命令整理
- Java序列化技术即将被废除!!!
- Ubuntu16.04编译Android6.0/cm13.0教程及相关错误解决办法
- windows制作docker镜像_优秀软件推荐-微软官方工具升级windows或制作启动U盘及镜像...
- 机器学习 深度学习 ai_什么是AI? 从机器学习到决策自动化
- 详解哈夫曼树和哈夫曼编码
- 最近的收获以及清明节的安排
- java idwork长度_java 字符串id
- 用实际例子理解回调函数(Calback)
- 兔子数列规律怎么讲_神奇兔子数列
- linux 信号sigabrt,程序运行产生SIGABRT信号的原因---转
- [NXP.iMX6UL] 驱动开发
- Webgl实现的天气效果(下雨、下雪)
- eu5,eu7,ex3,ex5安装第三方app
- MEM/MBA 写作-论证有效性分析(05)逻辑缺陷-不当类比简单归因
- 【C语言】小学数学练习
热门文章
- SpringBoot+WebSocket问题:Failed to register @ServerEndpoint class
- 2021杭电多校第3场_HDU6975_Forgiving Matching
- 柠檬水健康问题打包解答
- 苹果手机怎么创建php,怎么在苹果官网注册Apple ID?在网页上创建Apple ID教程
- 学习编程时真正值得一读的一篇文章 与 书籍
- ESXI下安装OpenWrt/LEDE软路由教程(附超全功能固件镜像下载)
- 和技术大咖们一起工作是怎样的体验?擎创招人进行时,你~要上车吗?
- 解决从k8s.gcr.io拉取镜像失败问题
- STL的使用和背后数据结构
- 大学计算机与人工智能基础课后答案,好书推荐 | 人工智能基础及应用