前言
- 回顾几年前,做性能测试,尤其是服务器性能测试难度比较大,一是测试人员本身技术不足,二是测试的生态环境
不够完善(参考资料少、实用案例少、工具选型少),然而在这两年随着测试环境的生态逐步完善,性能测试也就
不那么难了!
测试目标
- 通过wetest测试工具,找出系统能够承受的最大压力,并找出性能瓶颈。
本次要测试的为微信小游戏的后台服务器性能问题。
测试资料准备
- 接口文档(以便测试人员了解各个接口的请求方式)
- 与开发沟通,了解服务器部署的方式(根目录、日志文件位置)
- 服务器硬件指标(多少内存、硬盘类型(SSD or 高性能云盘)、网络带宽、CPU性能指标)
- 腾讯云账号并购买wetest服务
测试策略
- 由于此次性能测试无任何历史依据,故测试策略采用选用最基础的登录接口、排行榜页面查询接口、分享接口的几个核心
接口,进行单接口,多接口混合测试!
- 对登录接口、排行榜页面查询接口、分享接口进行单接口逐步增压并发测试(1--50--200--400--800),获取wetest测试报告
- 对登录接口、排行榜页面查询接口、分享接口按照1:2:2的比例进行逐步增压并发测试(50--200--400),获取wetest测试报告
- 确定tps最大峰值后,将对应场景进行再次复测,若两次测试结果无较大差异,则判定当前场景已能反馈服务器能够支撑的
最大压力
测试过程中的问题
- 接口文档存在部分错误
- 解决方法:通过页面操作,在服务器日志中查询对应接口请求路径
- 登录接口依赖动态token进项验证
- 解决方法:请开发提供万能token
测试结论
- 登录接口消耗性能严重
- 最大tps值为:2300
- 硬件瓶颈主要在于:网络带宽,内存、CPU、硬盘达到百分之40占用情况,网络带宽占用已达百分百
- 软件瓶颈主要在于:大量用户登录时,服务器需要请求另一台数据库服务器进行查询,数据库服务器性能较低,
导致请求接口存在一定比例的超时