网络卡问题排查手段

问题

对后端来说,网络卡了问题,本身很难去排查,因为是 App 通过互联网连接服务

总结下,以往经验,网络卡,通常会有以下情况造成:

  • 某地区网络问题
  • 某地区某运营商问题
  • 后端服务超载
  • 前端网络模块 BUG
  • 后端网络模块 BUG

某地区网络问题

一般通过拨测手段,来判断是否有这个问题

比如可以用阿里云的拨测工具: https://boce.aliyun.com/detect/ping

特别是出海的游戏,遇到网络问题,首先就是拨测下

某地区某运营商问题

笔者就遇到过这样的问题,最后排查下来,只有韩国棒子用某运营商业务的手机网络出问题

对于这种问题,只能依靠客户端打点数据上传收集

且信息越详细越好,如:

  • IP
  • 操作系统
  • 地区
  • 运营商
  • 网络事件
  • Ping 延迟

根据这些信息,聚合成图表,对下事发时间,直接就可以排查是否是这个问题

后端服务超载

后端服务超载,也会造成卡顿

这种通常比较好排查。因为遇到这种情况,服务通常是不健康的,线上监控系统通常就已经在告警了

前后端网络模块 BUG

这种概率很低了,一般属于项目前期。开发过程中,通常就会解决掉了

Ping 延迟

如果能让玩家直观的感受到是网络卡而不是其他,这样上报的 bug 就更有针对性

比如,游戏画面上显示 Ping 延迟,就是一个好方法

这里有个小细节,实际上有 2 种 Ping :

  • ICMP 协议实现的 Ping
  • Ping 实现经过 game 服的回包

这两种都很有用处:

  • ICMP 协议,直观反映 App 到服务的网络质量
  • game 服处理的会包,结合 ICMP 的差值,能反映服务是否已经超载

你可能感兴趣的:(linux,网络,拨测,Ping,ICMP)