Tomcat连接数触顶的常见根因
快速自检步骤
优化与配置建议
典型现象与对应处置
| 现象 | 可能原因 | 处置要点 |
|---|---|---|
| 新连接被拒绝或客户端报 Connection reset | accept 队列溢出(acceptCount 或内核 somaxconn 过小) | 提升 acceptCount 与 net.core.somaxconn,观察 Recv-Q 是否回落 |
| 吞吐下降、线程打满、请求排队 | maxThreads 不足或外部 Executor 队列过长 | 提高 maxThreads;为 Executor 设置有限 maxQueueSize 与拒绝策略 |
| 大量 TIME_WAIT | 短连接并发高、端口与回收参数不合理 | 扩大 ip_local_port_range,开启 tcp_tw_reuse,缩短 tcp_fin_timeout |
| 大量 CLOSE_WAIT | 应用未关闭连接/响应流 | 代码审计确保 close/flush,排查 Filter/Servlet 异常路径 |
| 新连接建立极慢或失败 | 文件句柄/端口耗尽 | 提升 ulimit -n、/proc/sys/fs/file-max 与端口范围,排查句柄泄漏 |