大家如何处理TCP死连接的问题?
时间:2010-08-28
来源:互联网
对于TCP服务端,对端网线断掉时服务端是不会马上知道的,这种情况会导致死连接。因为客户端程序不是我们写的,所以那种定时心跳的办法不可行。
想到两种办法:
(1)定时ping所有的连接,如果某个连接一直ping不通,则认为其已断开,关闭连接。
(2)通过keep alive办法。
不知道上述两种方法是否为通用做法,请问大家在设计TCP服务端时是如何处理这种情况的?
想到两种办法:
(1)定时ping所有的连接,如果某个连接一直ping不通,则认为其已断开,关闭连接。
(2)通过keep alive办法。
不知道上述两种方法是否为通用做法,请问大家在设计TCP服务端时是如何处理这种情况的?
作者: chenaiming2009 发布时间: 2010-08-28
服务端定时发心跳,应答超时就认为已经断了
作者: hellioncu 发布时间: 2010-08-28
回复 hellioncu
晕,我说了客户端程序是别的厂家写的,不可能通过这种定时发心跳的方式的
晕,我说了客户端程序是别的厂家写的,不可能通过这种定时发心跳的方式的
作者: chenaiming2009 发布时间: 2010-08-28
ping?你能保证客户端会应答?
作者: efolzl 发布时间: 2010-08-28
协议不完备啊
作者: cugb_cat 发布时间: 2010-08-28
QUOTE:
回复 hellioncu
晕,我说了客户端程序是别的厂家写的,不可能通过这种定时发心跳的方式的
chenaiming2009 发表于 2010-08-28 23:19
晕,我说了客户端程序是别的厂家写的,不可能通过这种定时发心跳的方式的
chenaiming2009 发表于 2010-08-28 23:19
服务端是你的,协议不是你设计的?
不能改动协议的话只能设一个较长的时间,没有收到数据就认为断开吧,客户端被误断了应该会重连吧
作者: hellioncu 发布时间: 2010-08-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28