第1章 概述

1.1 编写目的

编写该测试总结主要有以下几个目的:

1、 通过对性能的测试结果的分析,得到对网站性能的评估;

2、 分析测试的过程、为网站持续改进的质量过程提供参考。

1.2 项目背景

本项目是应开发中心的要求,对xx网站所涉及的关键/接口性能的情况进行压力测试与分析,以期辅助技术支持人员对服务器进行性能调优。

1.3测试对象

1.4测试范围

针对上述接口进行压力测试,本次测试仅对该地址访问产生的数据交互做为测试依据,并且由于时间紧,只测试以上每个接口在模拟真实用户情况下的并发数能力。

2 测试活动

2.1 测试目的

对上述接口进行压力测试,分析其真正的负载能力及并发能力,从而为技术人员对服务器性能调优提供参考。

2.2 测试组织架构

2.3 测试环境

2.4 测试工具

loadrunner

nmon

2.5 测试过程

从xxx至xxx展开对上述接口的并发数,事务响应时间等指标进行压力测试,性能分析与服务器调优,其间进行了多次测试,最终选取代表性的测试场景作为数据来原依据。

2.6 测试场景

场景一:城市字母列表接口并发能力测试

分别设置200,300个虚拟用户,每个虚拟用户里面设置集合点,每1秒增加2个用户,所有的虚拟用户和人加载完毕后,持续向服务器发起请求。稳定运行30分钟。(本次测试接近真实用户行为)结果图如下:

200并发用户,性能稳定,图略

300并发用户,事务平均响应时间为1.925,事务平均响应时间与每秒请求数合并图如下:

场景二:城市推荐景点接口测试

分别设置200,300个虚拟用户,每个虚拟用户里面设置集合点,每1秒增加2个用户,所有的虚拟用户和人加载完毕后,持续向服务器发起请求。稳定运行30分钟。(本次测试接近真实用户行为)结果图如下:

200并发用户,性能稳定,图略

300并发用户,事务平均响应时间为0.158,性能稳定,图略

此时服务器资源,如图:

内存资源使用图如下:

场景三:取varnish中图片接口测试

分别设置200,300,600,800,1000个虚拟用户,每个虚拟用户里面设置集合点,每1秒增加2个用户,所有的虚拟用户和人加载完毕后,持续向服务器发起请求。稳定运行30分钟。(本次测试接近真实用户行为)结果图如下:

200,300,600,800并发用户,性能稳定,图略

1000并发用户,运行稳定,平均事务响应时间为最大为1.664,此时平次事务请求数为108.325。参照下图:

对应的服务器资源使用情况监控图请参照下图:

内存使用情况,总体占用空间不大,如下图:

场景四:图吧转坐标接口测试

分别设置300,500个虚拟用户,每个虚拟用户里面设置集合点,每1秒增加2个用户,所有的虚拟用户和人加载完毕后,持续向服务器发起请求。稳定运行30分钟。(本次测试接近真实用户行为,由于会影响到线上服务器,所以没有继续加大用户并发量) 结果图如下:

300并发用户,性能稳定,图略

500并发用户,事务平均响应时间为0.678,性能稳定,平均事务响应时间与TPS合并图如下

此时服务器资源使用情况如下图:

内存使用情况如下图:

3 测试结果分析

3.1 测试结果分析

业务性能指标统计分析结果:

业务名称

并发数

业务平均响应时间(秒)

业务成功

次数

业务失败次数

业务失败率(%)

平均TPS(个)

城市字母列表接口。

300

1.925

97736

192

0.19%

23.102

城市推荐景点。

300

0.158

377,676

111

0.02%

89.486

取varnish中图片(以反应最慢的图片值为参考)

1000

1.644

310,244

0

0

54.189

图吧转坐标,

500

0.678

136.222

0

0

58.92

从表中结果可以看出,城市字母列表接口与城市推荐景点两个接口的并发量在300的情况下错误率比较小,由于该业务与数据库有关系,性能比其它两个结果要低不少,经开发讨论此值也应该可以满足目前我们的业务需求。

资源监控

序号

接口名称

CPU使用率

内存

备注(参照文件)

1

城市字母列表接口。

42.4%

无溢出

leador241_131114_1505.xlsx

2

城市推荐景点。

7.5%

无溢出

leador241_131114_1421.xlsx

3

取varnish中图片。

5.8%

无溢出

leador-web-220-113-2-91_131115_1005.xlsx

4

图吧转坐标,

3.1%

无溢出

leador241_131114_1651.xlsx

第4章 测试结论与建议

经过反反复复多次测试,在先后调整测试服务器openfiles, Max user Process, Max user Thread, 以及sql连接数等服务器参数后,在服务器CPU占用合理,内存占用合理的情况下最终得出的上述结果,

城市字母列表接口与城市推荐景点两个接口的并发量在300的情况下错误率比较小,由于该业务与数据库有关系,所以经过计论认为可以满足目前的现实需求。

取varnish中图片和图吧转坐标这两个接口的并发能力较强,分别为1000与500,可以满足我们目前的业务需求。

由于我们测试环境主数据库是与tomcat安装在一台服务器上的,直接会影响到服务器I/O指标(上面服务器监控图中I/O峰值都比较高,当然与并发用户请求有关),所以建议我们对数据库再进行优化。其它方面的性能参数大家可以看附录文件。

另外我们还有几个接口与线上服务器有关,以后测试环境具备测试条件后再进行测试,如果有时间我们还可以从网站的其它TPS,HPS等指标,从数据库的性能角度做针对性的测试,这样就会得到一个比较全面的测试结果。

关键接口性能测试报告相关推荐

  1. 【总结】个人推荐的接口测试工具和接口性能/压力测试工具

    一般接口有2种测试,现在很多是模糊了这个,但是如果细分.一般还要写<接口测试用例>和<接口性能测试用例>.同样,也分接口测试报告和接口性能测试报告. 接口的本质及其工作原理 接 ...

  2. 性能测试报告不会写?最标准的模板来了

    目录 性能测试报告 1. 测试概述 1.1 测试目标 1.2 指标和术语 2. 环境.工具 2.1 测试环境 2.2 测试工具 3. 测试方案 3.1 测试类型 3.2 业务模型 3.3 加密验签处理 ...

  3. 性能测试报告模板 V1.0

    1. 测试项目概述与测试目的 1.1 项目概述 本部分主要是针对即将进行压力测试的对象(接口.模块.进程或系统)进行概要的说明,让人明白该测试对象的主要功能与作用及相关背景. 1.2 测试目标 简要列 ...

  4. 如何做一份精致的性能测试报告

    相比于普通的功能测试,性能测试对测试工程师的技能要求更高,一般来说,也只有中高级测试工程师才会有机会做性能测试. 本文通过下面三个部分来介绍 性能测试报告的目的 性能测试过程中的关注点有哪些? 如何做 ...

  5. 细说接口性能优化的11个小技巧

    前言 接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题. 该问题说简单也简单,说复杂也复杂. 有时候,只需加个索引就能解决问题. 有时候,需要做代码重构. ...

  6. 详细的聊聊接口性能优化的11个小技巧 不收藏对不起我

    前言 接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题. 该问题说简单也简单,说复杂也复杂. 有时候,只需加个索引就能解决问题. 有时候,需要做代码重构. ...

  7. 聊聊接口性能优化的11个小技巧

    点击下方"IT牧场",选择"设为星标" 前言 接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题. 该问题说简单也简 ...

  8. App首屏接口性能优化

    目前所在项目组开发的是一款母婴产品,集工具和社区属性.截止本文发布,注册用户接近7000万,首屏接口日访问量过百万.在首屏中,会给用户展现不同的数据,比如每日任务,宝宝(婴儿)每日概述,胎教音乐,运动 ...

  9. 性能测试平台搭建及简单使用(jmeter分布式+influxdb2.0+grafana)附性能测试报告

    目录 一.jmeter分布式配置 1.分布式介绍 2.配置JDK 3.slave机器配置(linux系统为例,windows资源杂乱不建议使用) 4.master机器配置(windows系统为例,作为 ...

  10. Mac安装与配置jmeterjmeter的使用jmeter生成性能测试报告

    前言:了解JMeter JMeter用于高并发压力测试 一.下载JMeter https://jmeter.apache.org/download_jmeter.cgi 进入官网下载JMeter安装包 ...

最新文章

  1. UA MATH563 概率论的数学基础 鞅论初步7 停时与Upcrossing不等式
  2. 在TensorFlow和PaddleFluid中使用多块GPU卡进行训练
  3. 同时读取两个USB摄像头采集
  4. Bootstrap(自助法),Bagging,Boosting(提升)
  5. Linux网络DNS分离解析
  6. 列主消元法解非奇异线性方程组的MATLAB程序
  7. VMware 虚拟机扩展Ubuntu系统磁盘空间
  8. 【Pytorch】LeNet的pytorch写法
  9. 圆周率用计算机能算出来不,怎样用普通的家用计算机计算圆周率?
  10. 广东科技学院计算机学院院长,陈强-广东科技学院-计算机学院
  11. bitcoin轻钱包之SPV验证
  12. baidu patchrom项目 make后刷机包脚本多一个0解决
  13. 敏捷迭代是什么意思_我认为“敏捷”的方向是第4部分:“敏捷”是什么意思?...
  14. 记录软考上午题1计算机系统之1.2 计算机体系结构及真题
  15. linux 修改xt_recent参数 ip_list_tot ip_pkt_list_tot
  16. arcgis server发布shp服务实现数据库更新后服务也相应更新数据
  17. GeoGebra画正态分布密度曲线两种方式
  18. 产生式正向推理和逆向推理程序
  19. java架构师入门教程,java技术架构师入门到精通高薪就业教程百度云下载
  20. 普通主播一个月能挣多少钱?结合身边的案例告诉你主播真实的收入!

热门文章

  1. 用计算机用图解法求理论塔板数,简洁法计算理论板数工具
  2. Qt Designer怎样加入资源文件
  3. Type-C接口技术(一)
  4. 国内主要OTT平台背后的那些CDN服务商
  5. petalinux 2020.2 安装教程,基于ubuntu20.04.LTS版本
  6. 单元格下拉全选快捷键_excel全选快捷键是什么,excel表格全选快捷键是什么?...
  7. 电脑有英伟达独显,有了英伟达显卡驱动还要英特尔显卡驱动吗?
  8. MySQL的登陆【数据库系统】
  9. 视频播放神器——PotPlayer基本设置
  10. maxscale mysql 主从_orchestrator+maxscale+mysql5.7GTID主从切换测试过程