游戏上线前服务器压力测试应该怎么做

游戏上线前服务器压力测试应该怎么做,第1张

对于游戏后台性能,评测标准不只单单是TPS(每秒处理多少个XX请求),因为当你的游戏服务器上线后,不存在一群玩家只发XX请求的压力场景。所以,游戏后台受到的现网请求压力永远是多场景混合的,在这样的压力下,后台能支撑多少人同时在线,才是一个游戏压测者需要得到的有价值的测试结论。  

要得到可支撑的"最大同时在线人数",主要做好2件事:

1、设计你的类现网压力模型

在现网真实压力里,不论压力大小如何变化,现网环境如何变化,一个游戏类型和玩法设计定型后,永远有2个压力宏观数据保持不变:a 各接口的压力比例不变, b玩家平均每分钟操作频率不变。因此,压力测试目标就转变成了如何模拟符合ab数据的压力。  

对于a,首先从同类型游戏或者本游戏内测阶段,日志插桩,收集各个接口的调用比例;然后,将接口比例转化为场景比例,如同时会有个2%完结登陆、15%玩家战斗、20%玩家拉取好友列表、10%玩家赌博(一个手游场景例子)。

对于b,同样在内测阶段收集玩家平均操作频率。

此时有了a和b,就可以构造出一分钟内玩家同时在线的真实压力模型了。

2、用压测工具构造出符合压力模型的压力

这个可以自己写,也可以使用现成的压测工具。现在市面上的压测工具很多,但很多都是专注于TPS这个参数,不符合游戏行业压测的关注点,同时在线人数。

1确定需要压测你网站的什么业务。

2根据业务录制测试脚本,选择web协议

3脚本录制完毕后,需要对脚本进行参数化,设置判断事务成功条件,设置集合点等

4脚本优化完毕后,打开controller进行压力测试,压测的时候开始用少量的并发并逐渐增大的方式。

5在压测的同时设置需要监控的服务器资源,数据库、英语服务器等资源情况

如何判断你服务器的最大承受能力?

当你在压测的过程中,比如当并发达到50后,发现系统资源不足,应立即停止压测,然后并发数减少到40,直到你监控到的所以资源都在正常范围,则此时的并发就是你需要的结果。

如果需要,可以帮你录制脚本。嘿嘿

网站服务器的压力测试我觉得主要有一些几点。

1协议这边基本上以http或者https为主了,如果使用其他协议需要分析其打解包的方法。

2要产生一定的压力,压力源这边一定要有保证。一般都是用机器人来模拟压力,关于机器人的逻辑可以根据具体业务来开发。

3需要观察在一定压力下,服务器的各项性能指标(cpu,内存,IO,网络流量)进行观察,比如内存是否有泄漏,cpu利用率过高的情况。

4压力测试应该是一个持续性的过程,在这个过程中需要统计服务器的性能数据,包括tps,以及机器的负载情况等。据此可以分析服务器的瓶颈在何处,后续可以针对优化。

5目前大部分的服务器都部署在Linux系统上,测试同学还需要掌握相关的Linux命令以便可以更好的测试。

如果你觉得前面的太麻烦,可以来WeTest服务器压力测试高并发,实时性能报表,专家级性能优化建议,目前我们正在做网站压测这一块,你要做的仅仅是填下被测的URL即可,压力源、数据统计这些琐碎的工作交给我们就行了。

1、把jmeter放到需要压测的服务器目录下,然后解压

2、修改服务器jmeter下bin目录中的jmeterproperties和jmeter-server相关配置

jmeterproperties文件修改启动端口,默认端口1099,也可设置为其他端口

修改前:

jmeter-server文件修改:修改为需要压测服务的ip,也就是jmeter所在服务器的ip

3、修改本地jmeter jmeter-properties的配置:远程主机地址修改为压测服务器ip地址,如果服务器端口设置不是1099的默认端口,则还需要加上端口,格式:xxxxxxxxxxxx:port,多个服务同时加压,需要配置多个ip地址,用逗号隔开

4、本地jmeter启动

jmeter50及以上启动时会报FileNotFoundException

解决办法:本地和部署在服务器上的jmeterproperties文件配置修改为:serverrmissldisable=true

修改后重启本地和服务器的jmeter

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 游戏上线前服务器压力测试应该怎么做

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情