球球大作战巨星模式缓存
发布时间: 2023-08-08 18:03:50
‘壹’ 苹果手机玩球球大作战为什么会卡顿
这是典型的游戏服务器设计烂,没有考虑4G下会频繁切换IP的情况。所以我的结论是没救。
———————————
游戏服务器都会和手机维持一个长连接,用来向手机推送事件,比如日常任务开启。这个长连接虽然是手机发起的,但是当手机突然切换网络的时候,在运营商处分配出来的IP和端口号不一定和原来的一样。这就导致原来的连接实际上不可用。而服务器要检查到连路不可用需要时间,比如TCP断链检测默认45秒,而这个时间段相比手机的网络切换实在太久,手机发起重连接的时候,如果服务器不做一致性准入处理,在45秒内根本连不上,表现就是“我擦,怎么又没反应了”。当然45秒可以在程序上设置更短,比如5秒,但是相比400毫米级别的切换还是太久。
连不上的逻辑是部分正确的,因为我们要保护“在线用户”,防止线上用户被攻击者踢掉线这种悲剧发生。然而在移动网络上这种逻辑需要修改:因为移动端经常换链路,那么只要用户是用同一个设备再次连接的,服务器需要用新连接替换掉旧连接。
热点内容