社区
网络编程
帖子详情
客户端发心跳包给服务端,服务端接收到这个包后,需不需返发回客户端?
ttnewday
2009-08-21 08:45:43
客户端发心跳包给服务端,服务端接收到这个包后,需不需返发回客户端?
...全文
829
15
打赏
收藏
客户端发心跳包给服务端,服务端接收到这个包后,需不需返发回客户端?
客户端发心跳包给服务端,服务端接收到这个包后,需不需返发回客户端?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rightorwrong
2009-11-23
打赏
举报
回复
服务端拔掉网线后,客户端发送还是成功的
wu14245670
2009-08-25
打赏
举报
回复
不用回
俗话说没有消息就是好消息
windos里如果你成功不会给你提示的
如果成功还弹出对话框看着不舒服
但是如果没有访问服务器成功你弹出错误才OK
这样合情合理
jyh_baoding
2009-08-25
打赏
举报
回复
你随意,只要达到目的就可以
ok1234567
2009-08-24
打赏
举报
回复
1
视通讯模式而定
在
异步
模式下,是需要回的
awjx
2009-08-23
打赏
举报
回复
发给心跳包服务器的心跳包,一般是不要回的。
双方应该这样处理:
客户端定时发包,当发送失败即视为连接断开;
服务器为每个客户端计数,当超过定时间隔*1.5的时间未收到心跳包,则视为客户端已掉线。
如果服务器还要应答,增加了服务器的负担,你想,如果100个客户端要应答100次,如果10000个呢?再增加呢?
Conry
2009-08-21
打赏
举报
回复
[Quote=引用 8 楼 ttnewday 的回复:]
引用 6 楼 shenyi0106 的回复:
引用 5 楼 ttnewday 的回复:
我测试了一下,如果客户端send包时,如果掉网了,那么就会出现SOCKET_ERROR,好像不用服务端回复一个包给客户端,客户端也能检测到网络出错了。这是怎么回事呢?
那你试试直接把服务器网线拔掉,看看会如何;或者直接拔电源看看有什么效果
就是把网线拔掉了,send时出现SOCKET_ERROR,所以,我想,应该不用服务端返回一个包的。如果客户端发了一个包给服务端,要求服务端回发,并开始记时,但服务端这边恰好繁忙,一时来不及返回一个包,而客户端的计时时间到了上限了,但还没收到包,那么就误以为网络掉线了(实际上还是连着的),于是关闭并重连,那岂不是有问题?
[/Quote]
还有就是一般也不是检测一次,最少3次才认为掉线,
再说了只要你能收到正常的数据包,就应该重置计时了,因为既然正常收据都收到了,不就说明server在线吗
Conry
2009-08-21
打赏
举报
回复
[Quote=引用 8 楼 ttnewday 的回复:]
引用 6 楼 shenyi0106 的回复:
引用 5 楼 ttnewday 的回复:
我测试了一下,如果客户端send包时,如果掉网了,那么就会出现SOCKET_ERROR,好像不用服务端回复一个包给客户端,客户端也能检测到网络出错了。这是怎么回事呢?
那你试试直接把服务器网线拔掉,看看会如何;或者直接拔电源看看有什么效果
就是把网线拔掉了,send时出现SOCKET_ERROR,所以,我想,应该不用服务端返回一个包的。如果客户端发了一个包给服务端,要求服务端回发,并开始记时,但服务端这边恰好繁忙,一时来不及返回一个包,而客户端的计时时间到了上限了,但还没收到包,那么就误以为网络掉线了(实际上还是连着的),于是关闭并重连,那岂不是有问题?
[/Quote]
看清楚
是把
服务端的网线
拔掉,不是客户端
ttnewday
2009-08-21
打赏
举报
回复
[Quote=引用 6 楼 shenyi0106 的回复:]
引用 5 楼 ttnewday 的回复:
我测试了一下,如果客户端send包时,如果掉网了,那么就会出现SOCKET_ERROR,好像不用服务端回复一个包给客户端,客户端也能检测到网络出错了。这是怎么回事呢?
那你试试直接把服务器网线拔掉,看看会如何;或者直接拔电源看看有什么效果
[/Quote]
就是把网线拔掉了,send时出现SOCKET_ERROR,所以,我想,应该不用服务端返回一个包的。如果客户端发了一个包给服务端,要求服务端回发,并开始记时,但服务端这边恰好繁忙,一时来不及返回一个包,而客户端的计时时间到了上限了,但还没收到包,那么就误以为网络掉线了(实际上还是连着的),于是关闭并重连,那岂不是有问题?
ziplj
2009-08-21
打赏
举报
回复
我们公司是做GPS的 设备发送过来的心跳包我们是不用回的
但是如果是一般的两个电脑应用程序 这个心跳包还是应该回
不回的原因有两种 一种是流量问题 一种是设备收到了可能也不回复
其实主要还是流量问题 一般来说 应用程序可以无视流量
shenyi0106
2009-08-21
打赏
举报
回复
[Quote=引用 5 楼 ttnewday 的回复:]
我测试了一下,如果客户端send包时,如果掉网了,那么就会出现SOCKET_ERROR,好像不用服务端回复一个包给客户端,客户端也能检测到网络出错了。这是怎么回事呢?
[/Quote]
那你试试直接把服务器网线拔掉,看看会如何;或者直接拔电源看看有什么效果
ttnewday
2009-08-21
打赏
举报
回复
我测试了一下,如果客户端send包时,如果掉网了,那么就会出现SOCKET_ERROR,好像不用服务端回复一个包给客户端,客户端也能检测到网络出错了。这是怎么回事呢?
shenyi0106
2009-08-21
打赏
举报
回复
如果你的客户端需要检测服务器是否宕机的话,那么就需要回复,否则就不需要回复了.
tongxu1984
2009-08-21
打赏
举报
回复
回个,这样确定客户端还活着。
KHacker_001
2009-08-21
打赏
举报
回复
[Quote=引用 1 楼 ziplj 的回复:]
这个看你的程序而定了
你回了 客户端可以知道
一般来说 还是要回的
如果对流量没有什么要求的话 应该回复一个心跳包
[/Quote]楼上正解,如果客户端需要确认服务器端收到这个包的话,那肯定要服务器返回信息的 ,这和tcp的握手差不多 呵呵
ziplj
2009-08-21
打赏
举报
回复
这个看你的程序而定了
你回了 客户端可以知道
一般来说 还是要回的
如果对流量没有什么要求的话 应该回复一个心跳包
Socket通信完整实例(
心跳包
,
客户端
断线重连,
服务端
超时断开
客户端
连接)
Socket通信完整实例(
心跳包
,
客户端
断线重连,
服务端
超时断开
客户端
连接) 通用工具类 public class SocketUtil { public static String ADDRESS = "192.168.1.123"; public static int PORT = 10086; /** * 读数据 * * ...
python socket
心跳包
_Socket之
心跳包
实现思路
由于最近要做一个
客户端
,但是要求有一个掉线检测的功能,下面让我们看看使用自定义的HeartBeat方式来检测
客户端
的连接情况。
心跳包
的实现思路:
客户端
连接上
服务端
后,在
服务端
会维护一个在线
客户端
列表。
客户端
每隔一段时间,向
服务端
发
送一个
心跳包
,
服务端
受收到包以后,会更新
客户端
最近一次在线时间。一旦
服务端
超过规定时间没有
接收
到
客户端
发
来的包,则视为掉线。代码:
客户端
每隔一段时间,
发
送一个
心跳包
:va...
c语言socket心跳,Socket之
心跳包
实现思路
原 https://www..com/snaildev/p/7724867.html
心跳包
的实现思路:
客户端
连接上
服务端
后,在
服务端
会维护一个在线
客户端
列表。
客户端
每隔一段时间,向
服务端
发
送一个
心跳包
,
服务端
受收到包以后,会更新
客户端
最近一次在线时间。一旦
服务端
超过规定时间没有
接收
到
客户端
发
来的包,则视为掉线。代码:
客户端
每隔一段时间,
发
送一个
心跳包
:vartimer =newSystem...
socket 连接长时间没有
发
送消息之后
客户端
发
送消息
服务端
接收
不到。
局域网内没有问题,然后公网地址存在问题。那么问题的原因就是网络链路的问题。比如:防火墙、nginx等中间件使socket通道断开。服务器开启一个socket服务。然后
客户端
用工具测试,开始正常的,但是
客户端
闲置10分钟左右然后再去
发
送
发
现
服务端
收不到消息了。经过多次排除,最后
发
现局域网内
客户端
不管闲置多久都不会
发
生
服务端
接收
不到的情况;建议采用心跳监听,如果断开及时重连。
服务端
向
客户端
主动
发
送消息
通常情况下,无论是web浏览器还是移动app,我们与服务器之间的交互都是主动的,
客户端
向服务器端
发
出请求,然后服务器端返回数据给
客户端
,
客户端
浏览器再将信息呈现,
客户端
与
服务端
对应的模式是:
客户端
请求--
服务端
响应,这种机制对于信息变化不是特别频繁的应用尚可,但对于实时要求高、海量并
发
的应用来说显得捉襟见肘,尤其在当前业界移动互联网蓬勃
发
展的趋势下,高并
发
与用户实时响应是 Web 应用经常面临的...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章