提问:游戏服务器的压力测试应该如何进行?自己写机器人还是 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这个参数,不符合游戏行业压测的关注点-同时在线人数。
游戏服务器的压力测试应该如何进行?
发表于:2017-01-09
作者:网络转载
来源:
 相关文章
空穴来风的服务器架构实现高并发性能... 性能测试中服务器关键性能指标浅析 服务端常见性能隐患分享 压力测试和性能分析方法论 压力测试如何准备数据?思路来了! 性能测试中的存储高可用切换- 周排行
- 月排行
-   软件测试之异常测试
-   MongoDB大数据高并发读写性能测试报告
-   可靠性测试教程:优秀实践综合指南
-   可靠性测试的基础知识——软件可靠性测试
-   压力测试如何准备数据?思路来了!
-   性能测试准入准出规范
-   性能测试常见术语浅析
-   Docker容器网络性能测试和调优策略
-   软件测试之异常测试
-   如何使用k6做性能测试
-   性能测试准入准出规范
-   稳定性测试怎么做,这篇文章彻底讲透了!
-   干货|性能测试模型初探及应用方法分析
-   可靠性测试教程:优秀实践综合指南