问题背景:
游戏上线后偶现这种情况(注意是偶现):客户端http请求和websocket请求发送给服务器后,服务器收到消息后进行处理并马上返回,这个一来一回的过程超过15秒。经排查网络是没有断开的,服务器负载也很低并没有阻塞请求。
补充:服务端排查是说收客户端发送消息到服务器接收这个过程时间很久,比如客户端是 10点0分0秒准时发的,服务端收到消息已经10点0分20秒了,感觉是网络通信消耗了几十秒。
我们的处理方式:
消息一来一回有顺序,客户端需要收到上一条服务端返回的消息才允许发送下一个请求。发送消息的时候客户端记录时间戳,并且启动定时器,消息回来时重置定时器,如果一条消息发送后15秒未返回就提示网络异常,需要重新登录游戏。但是这种情况游戏体验不是特别好想优化一下。
请教各位大佬:
1)大家的游戏是否有统计或者出现过类似这种情况吗?
2)这种情况的原因是什么?
3)如何解决或优化体验?
, 意思是从服务器底层数据队列 到 业务消息解析这个过程卡了很久是吗