游戏服务器的压力测试应该如何进行?
作者:网络转载 发布时间:[ 2016/3/25 14:04:41 ] 推荐标签:性能测试 压力测试
提问:游戏服务器的压力测试应该如何进行?自己写机器人还是 LR 等工具?
我自己测试的方式如下:
1)先测Unit,这个没啥好说的,软件工程那一套,基本保障覆盖。
2)单接口压力测试。这里是用fake数据使用自己开发的压测脚本进行测试,基本上一个接口要测试5分钟的样子,期间保障两台机器同时并发300个进程不间断发包。
3)机器人测试。这个稍微麻烦点……总之是在跑机器人脚本,模拟一个玩家可能进行的操作,操作是随机的(除非某些关联操作,会写在一起),然后搞起10W+个机器人跑啊跑啊一跑是两三天……
4)采集线上数据。任何测试都模拟不了线上……无论如何线上都可能出现BUG的,所以……呵呵呵
会员周晨宇回答:
对于游戏后台性能,评测标准不只单单是TPS(每秒处理多少个XX请求),因为当你的游戏服务器上线后,不存在一群玩家只发XX请求的压力场景。所以,游戏后台受到的现网请求压力永远是多场景混合的,在这样的压力下,后台能支撑多少人同时在线,才是一个游戏压测者需要得到的有价值的测试结论。
要得到可支撑的"大同时在线人数",主要做好2件事:
1、设计你的类现网压力模型
在现网真实压力里,不论压力大小如何变化,现网环境如何变化,一个游戏类型和玩法设计定型后,永远有2个压力宏观数据保持不变:a. 各接口的压力比例不变, b.玩家平均每分钟操作频率不变。因此,压力测试目标转变成了如何模拟符合ab数据的压力。
对于a,首先从同类型游戏或者本游戏内测阶段,日志插桩,收集各个接口的调用比例;然后,将接口比例转化为场景比例,如同时会有个2%完结登陆、15%玩家战斗、20%玩家拉取好友列表、10%玩家赌博(一个手游场景例子)。
对于b,同样在内测阶段收集玩家平均操作频率。
此时有了a和b,可以构造出一分钟内玩家同时在线的真实压力模型了。
2、用压测工具构造出符合压力模型的压力
这个可以自己写,也可以使用现成的压测工具。现在市面上的压测工具很多,但很多都是专注于TPS这个参数,不符合游戏行业压测的关注点-同时在线人数。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11