[tcp] 服务端大量close_wait 和 time_wait状态
2023-02-18 15:37:27 时间
我开发的某个服务出现这个状态 , 出现了大量的close_wait , 占满了单进程的连接数1024
tcp连接关闭的时候 , 会有几种状态转移
close_wait的大量出现 , 这个是说明我们是被动关闭 , 并且被动关闭后 , 我们的程序没有把连接关闭掉 , 造成连接泄露了
我在做gofly在线客服系统的时候 , 把连接关闭改成了前端来关闭 , 但是后端对关闭的连接没有进行close , 没有close就不会发送ACK和FIN标志 , 造成了连接泄露
所以遇到close_wait大量出现 , 需要检查下程序
time_wait的出现 , 说明是我们主动关闭 , 连接是我们关闭的 , 我们需要等2MSL时间 , 等对方把数据传完 , 这时就是time_wait ,
才会发送ACK确认包 , 这个可以改系统参数 , 等系统回收就可以了 .
相关文章
- 第一年
- tronado: Exception: Cannot redirect after headers have been written
- [前端]npm安装慢,换用淘宝的镜像
- [MySQL]去重:DISTINCT
- Failed building wheel for lxml
- 网游中的网络编程3:在UDP上建立虚拟连接
- HTTP Header详解(转载)
- 网游中的网络编程2:发送和接收数据包
- 网游中的网络编程系列1:UDP vs. TCP
- HTTP 状态代码表示什么意思?
- 什么是web框架?
- HTTP真的很简单
- 十分钟搞懂什么是CGI
- HTTP状态码大全(转自wiki)
- 什么是真正的程序员?
- 小printf的故事(未完待续)
- [编辑器]走上atom之路1
- MassTransit 知多少 | 基于StateMachine实现Saga编排式分布式事务
- MassTransit 知多少 | 基于MassTransit Courier实现Saga 编排式分布式事务
- MassTransit 知多少 | .NET 分布式应用框架