定位泄漏
定位泄漏
ss -tan state close-wait | wc -l
ss -tanp state close-wait | head -20 # 看是哪个进程
ls /proc/<pid>/fd | wc -l # 对照 fd 数量| 根因 | 代码异常分支没关连接、连接池不回收、线程阻塞导致 finally 未执行 |
|---|---|
| 后果 | fd 耗尽后新连接报 EMFILE/Too many open files |
修复方向是应用:给连接加超时、确保 defer/finally 关闭、检查连接池归还逻辑;内核参数无法回收 CLOSE_WAIT。