首先介绍一下:netstat
netstat有两个重要的指标:
recv-Q 表示网络接收队列
表示收到的数据已经在本地接收缓冲,但是还有多少没有被进程取走,recv()
如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-service 攻击。
send-Q 表示网路发送队列
对方没有收到的数据或者说没有Ack的,还是本地缓冲区.
如果发送队列Send-Q不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快。
现象
线上服务访问memcache频繁的出现time out
观察
send-Q过大
结论
1、server没问题
2、client建立的tcp连接过多,以及数据量过大,处理慢