TCP心跳机制--Server踢出僵死连接的问题

TCP的Server端定时接收Client的心跳,在Server端发现Client在8秒内没有心跳发过来,就断开这个连接。

问题是:Server同时有上万个TCP连接,不可以用遍历的方法,怎样找到僵死连接(即超时客户端)?

为什么不用遍历方法,肯定要用遍历方法啊,不论上层是什么方法,底层肯定都是遍历。要相信计算机运算速度,你的上万个tcp连接,cpu估计用不了100毫秒就遍历完了。

你获取到的超时对象中设置一个id,然后建一个map,id->socket
然后再查找map来剔除socket