线上大量CLOSE_WAIT原因排查
2019-01-07阅读 9.8K0
近日遇到一个线上服务 socket 资源被不断打满的情况。通过各种工具分析线上问题,定位到问题代码。这里对该问题发现、修复过程进行一下复盘总结。
先看两张图。一张图是服务正常时监控到的 socket 状态,另一张当然就是异常啦!
图一:正常时监控
图二:异常时监控
从图中的表现情况来看,就是从 04:00 开始,socket 资源不断上涨,每个谷底时重启后恢复到正常值,然后继续不断上涨不释放,而且每次达到峰值的间隔时间越来越短。
重启后,排查了日志,没有看到 panic ,此时也就没有进一步检查,真的以为重启大法好。
情况说明
该服务使用Golang开发,已经上线正常运行将近一年,提供给其它服务调用,主要底层资源有DB/Redis/MQ。
为了后续说明的方便,将服务的架构图进行一下说明。0daybank
文章评论