关于socket长连接超时

游戏上正式服测试的时候,发现一个问题:每5分钟,socket长连接会自动中断。

检查了客户端和服务器的程序之后,都没发现主动断掉socket的逻辑,而且之前在内网测试也没出现这个问题!

初步怀疑是F5,但是短时间内没法查明原因!

一开始的解决办法,是在客户端加定时心跳,但是在实际使用中,遇到一个绕不过去的坑,就是如果游戏被挂起超过5分钟,这个心跳就不起作用了,两种情况会造成这个结果:

(1)游戏进Home后台(2)游戏切换到sdk的支付界面。

最后的解决办法是在服务器端加了心跳,针对用户的最后一条下行之后4分钟发一条广播心跳,每隔1小时断开所有没有上行的socket长连接,回收资源!

不够体面,但是work!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值