双十一LoanMarket压力测试报告
测试背景
评估服务器资源及几个重要接口的并发性能。
测试需求
由开发提供的5个重要接口:
|
业务场景 |
URL |
访问量(万) |
TPS |
请求比例(%) |
|
随手借点-首页产品接口 |
/suishoujiedian-webservice/loanProduct/v3/terminal/listAllLoanProduct.do |
73 |
19 |
|
|
贷款超市-产品配置 |
/cardniuoperation-webservice/product/listProductTree.action |
73 |
19 |
|
|
贷款超市-banner位 |
/cardniuoperation-webservice/bannerConfig/getShow.action |
26 |
6 |
|
|
贷款超市-统计上报 |
/cardniuoperation-webservice/loanStatService/addLoanStat.action |
149 |
37 |
|
|
贷款超市-活动配置 |
/cardniuoperation-webservice/loanGiftWebService/getLoanGiftItemByActivity.action |
68 |
19 |
其中,访问量来自于线上服务器的一天访问量总和,涉及到五个负载机。前四个接口有四个负载机,最后一个接口有两个负载机。
TPS采用二八原则(即80%的访问是在20%的时间内完成),随后计算出每秒的访问量。
测试方案
通过线上监控的接口访问量以及网卡流量可知,一天中,系统用户活跃时间为24小时,根据二八原则(80%的请求是在20%的时间内完成的),可计算出TPS。如上图所示,得到每个接口要达到的TPS。按照各请求的占比设计脚本,然后执行压测,观察各接口响应时间以及服务器资源利用情况。
性能指标
响应时间,单个接口低于1秒
TPS是否达到预期值
事务成功率不能低于98%
服务器资源利用率
|
指标 |
阈值 |
备注 |
|
CPU |
<70% |
过高会导致系统服务不稳定 |
|
内存使用率 |
<70% |
同上 |
|
磁盘使用率 |
<70% |
同上 |
|
网络带宽 |
<70% |
过高会导致网络延迟,响应时间变长 |
测试环境
负载机IP:
测试机IP:
数据库IP:
测试脚本
使用Jmeter测试工具,用Java编写测试变量处理过程,如用户ID随机获取及加密,循环发送请求,并且按照请求的比例来模拟线上用户并发访问系统。
测试数据
贷款超市-产品配置接口,userid由现网环境下导出100个。
贷款超市-统计上报接口,udid、userId由随机整数生成然后加密,loanBehavior范围为click, load_break, load_success, load_server_error, loanproduct_submit,loanproduct_refuse_contacts, loanproduct_refuse_location, home_click, load_product。
测试结果
|
并发用户数 |
混合场景接口平均响应时间(ms) |
总TPS |
请求总数(10分钟) |
|
100 |
168 |
591 |
354655 |
|
150 |
256 |
583 |
349867 |
|
200 |
334 |
595 |
357477 |
下面列举出100用户并发下的性能指标,从下图可以看出TPS(等同于Throughput)远远大于根据现网访问量计算出的TPS,平均响应时间很低。
- 响应时间和TPS
随手借点-首页产品接口返回数据较大,响应时间在751ms,其余接口响应时间在100ms以下,属于正常范围。
五个接口的测试环境下TPS均远大于线上TPS,性能良好。
TPS趋势图,稳定在600附近。
- 服务器资源利用率
CPU利用率在70%以下,正常(测试时间从14:39到14:49)。
IO使用率较低,正常。
网卡流量在120Mbps,正常。
MySQL连接数,正常。
慢速sql数量为0,正常。
测试结论
从上面的结果来看,在单个服务器情况下,压测接口的TPS大于现网服务器TPS的总和,可以满足接口日常访问量三倍的需求。
双十一LoanMarket压力测试报告的更多相关文章
- “双十一”购物狂欢节,电商运营和商业智能(BI)才是绝配
百年前,人们获取信息的方式是通过报纸.书籍:十年前,人们获取信息的方式是通过传统PC互联网:而如今,在4G网络高速发展的浪潮下,伴随着移动智能终端的普及,人们获取信息的方式已经逐渐转向了移动 ...
- 备战双十一,腾讯WeTest有高招——小程序质量优化必读
WeTest 导读 2018年双十一战场小程序购物通道表现不俗,已逐渐成为各大品牌方角逐的新战场.数据显示,截止目前95%的电商平台都已经上线了小程序.除了电商企业外,许多传统线下商家也开始重视小程序 ...
- 双十一 VS 火车票(12306)
火车票开售了,又是一年,code了一年,咱们也该回顾回顾了. 还记得12306上线之初各种技术大牛给人家出方案,吐槽人家外包费用?我们来回顾回顾. 就园子里都过千篇文章来侃这事儿,请问有多少主题的文章 ...
- jmeter压力测试报告 - DEMO
XXX压力测试报告 时间:2015-08-04 测试人员:xxx 目录 XXX压力测试报告... 1 一 测试 ...
- String的用法------程序猿的双十一
小感慨:我就静静的写着代码玩,度过一年一度的双十一,今晚就更新进度,整理笔记. package com.mon11.day10; import static org.junit.Assert.*; i ...
- 双十一前4小时,CentOS 6.5server启动错误排查
11月10日晚上8点多.眼看要到双十一了... 但我要说的这段经历却和双十一毫无关系.哈哈. 这天准备向CentOS6.5server的svn上传一些文件,结果开机启动时,却出现了以下的界面: 这是肿 ...
- jmeter压力测试报告
XXX压力测试报告 时间:2015-08-04 测试人员:xxx 目录 XXX压力测试报告... 1 一 测试 ...
- ABBYY FineReader去他的光棍节,我要我的双十一
今天就是双十一,全民剁手的双十一,一年仅一次的双十一,不只是半价的双十一.....此时此刻,多少钱拿起手机在疯狂购物,又有多少人死守着电脑,不敢怠慢一丁点机会,买着买着购物车就空了,然后才发现,咦!超 ...
- 双十一DIY装机记
一.装机背景 最近发现古董笔记本太卡了,用了近6年,尽管自己不打游戏,但是业余时间写写代码,同时开两个编辑器,打开个大一点的软件都卡的不行,据说更换固态硬盘可以提高速度,于是乎,京东买了一个500 ...
随机推荐
- 用switch组件控制一个元素的显示和隐藏状态
微信小程序开发(交流QQ群:604788754) WXML: <view class="body-view"> <switch bindchange=" ...
- Delphi中的日期加减
var Date: TDateTime; FormatSettings: TFormatSettings; begin Date := Now;//获取当天时间 ShowMessage(DateTo ...
- 如何安全的捂住你的AngelToken钱包
Angel Token钱包的重要性 AngelToken基于区块链底层技术的去中心化.安全可靠的特点,开发了数字资产钱包,是行业领先的中心化token钱包和去中心化交易平台相结合的链数字资产智能钱包. ...
- 网络编程-day3
---恢复内容开始--- 一.缓冲区: 将程序和网络解耦 输入缓冲区 输出缓冲区 每个 socket 被创建后,都会分配两个缓冲区,输入缓冲区和输出缓冲区. write()/send() 并不立即向 ...
- 阿里云服务器报 Liunx异常文件下载处理办法
阿里云服务器报 Liunx异常文件下载.挖矿进程.SSH远程非交互式一句话异常指令执行 清除办法 1.删除crontab里面的自启动脚本 2.删除authorized_keys 里面密匙 3.删除#/ ...
- thinkphp5和thinkphp3.2.3中URL重写出现No input file specified
查询后解决办法是打开public目录下的.htaccess文件,把:RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 改为:RewriteRule ^(.*)$ i ...
- Android串口屏(电阻,电容触摸),带AV输入,7寸LCD1(800*48...
基本参数:CPU:MT6572 双核1GHzRAM:512MB存储:4GB网络:GSM,WCDMA(BAND1)WIFI:2.4G 802.11bgn蓝牙:2.0支持GPS定位 扩展参数:1.电源输入 ...
- net core 随笔
UseApplicationInsights 这个有用到azure 才有用, 平时没用的话可以去掉. 遥测. 上下文指的是 进程间占有的资源空间. 当一个进程时间片到了或者资缺的时候就会让出CPU ...
- Spring工作原理及应用
spring原理 内部最核心的就是IOC了,动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射,反射其实就是在运行时动态的去创建.调用对象,Spring就是在运行时 ...
- 小程序 map组件问题 cover-view问题
使用小程序的组件map时 在开发者工具上一切顺利 但是在真机预览时 发现地图的层级是最高的 任何标签都覆盖不了它 调整z-index值并没有什么效果 原因是 微信小程序的map.video.canva ...