上一篇 下一篇 分享链接 返回 返回顶部

TIME_WAIT 过多怎么优化

发布人:泮崵 发布时间:8小时前 阅读量:0

短连接多的服务,TIME_WAIT 堆积会耗尽端口。同一件事有很多种做法,选哪种取决于你的系统版本和线上是否允许中断。

下面按“先判断范围、再处理、最后防复发”的顺序展开,涉及 TIME_WAIT、连接数 的关键动作都给了具体做法,可以照着走。

查看

ss -s 统计各状态连接数。

拿不准的时候先做备份再做变更,成本最低。

内核参数

tcp_tw_reuse=1、tcp_max_tw_buckets 适度调大。

容易踩的坑:最容易出问题的是细节不一致:版本、路径、参数任意一处对不上,现象就和预期差很远。

应用侧

改用长连接或连接池,效果最直接。

条件允许的话先在测试环境走一遍,再动生产。

注意

tcp_tw_recycle 在新内核已移除,别照抄旧教程。

常见问题

Q:TIME_WAIT这类问题,最快的判断办法是什么?
先确认现象的范围:只有单台还是全部、只在某个时段还是持续。范围一缩小,原因基本就浮出来了。

Q:按文中的步骤做完,还需要注意什么?
把处理过程和最终生效的参数记下来。同类问题再出现时直接对照记录,比重查一遍快得多。

小结

回到这篇的四个环节:查看、内核参数、应用侧、注意。生产环境优先考虑稳定性,新参数先在小流量机器上验证。

相关阅读:带宽被跑满怎么查、网络不通的排查顺序、DNS 解析排查方法。

目录结构
全文
微信公众号 微信公众号
微信客服 微信客服
电子邮箱: admin@qyun.net