各位:
以下是本周第一次双师压测结果,后续优化后会更新优化结果。
 
配置:
压测环境:   staging压测服务器配置4核16G,数据库4核8G
线上环境:   服务器配置16核24G,数据库主库:2核4,从库:4核8G 
负载机:      8核16G  内网
 
一、基准测试
 
结论:学生端获取当前课程接口100毫秒以上,教师端多个主要接口100毫秒以上,教师端接口优化空间较大。
 
二、混合压测
学生端:并发700,吞吐量486
服务器资源利用率20%左右,内存利用率40%左右
数据库利用率<10%,内存利用率70%左右。
 

 
教师端:并发50,吞吐量55
服务器资源利用率60%左右,内存利用率40%左右。
数据库利用率22%,内存利用率70%左右。
 
 

 
结论:服务器和数据库内存利用率总体偏高,教师端接口总体耗资源较多性能瓶颈明显。
 
 
三、主要耗性能接口
教师端主要接口分别单独压测(60并发线程循环10次)占服务器资源利用率如下:
 
获取约课学生信息/teacher/attendance/getStudent:利用率90%,注:测试班级学生数据为上限100个。
获取台词对话/teacher/lesson-lines-dialogue/byPointId:利用率87%
获取班级信息/teacher/attendance/464/classes:利用率38%
根据trackId获取所有课程/teacher/point/list:利用率30%
 
结论:以上3个接口并发几率大、占用资源最多,优化优先级最高。
 
login 60*10 13%
teacher/attendance 60*10 14%
/teacher/lesson-lines-dialogue/byPointId 50*10 87%
/teacher/system/self-profile 60*10 7%
/teacher/attendance/464/classes 60*10 38%
/teacher/attendance/getStudent 60*10 90%
/teacher/lesson-lines-progress/save 60*10 5%
/teacher/classroom-log/add 60*10 4%
/teacher/track/getTracks 60*10 6%
/teacher/point/list 60*10 30%
TOTAL    

综上:学生端目前没有性能压力,单台4核16G吞吐量可支持到500以上,线上配置更高,满足业务发展。教师端接口性能问题较严重,最多并发50个,吞吐量50左右。当每秒并发达到50时,教师总数预测在1000以上。鉴于目前B端的业务规模和教师总数,总体没有接口性能压力。当业务数据达到一定量时,管理后台的查询问题需要注意。

jmeter测试报告套路的更多相关文章

  1. Jmeter测试报告生成

    Jmeter测试报告生成 本文使用的 Jmeter 版本为 apache-jmeter-3.2 1. 命令行模式将 jtl 文件转成测试图表 注意: 这种方式只适用于jmeter3.0以后的版本 1. ...

  2. jmeter测试报告分析

    转载:http://www.cnblogs.com/miaomiaokaixin/p/6118081.html 在cmd中用命令行执行jmeter脚本: jmeter地址  -n -t  脚本地址  ...

  3. jmeter测试报告优化

    1.下载jmeter.results.shanhe.me.xsl 将该文件拷贝到jmeter\extras目录下 2.修改jmeter.results.shanhe.me.xsl 这里直接拷贝 jme ...

  4. jmeter测试报告汉化及脚本编写

    在做接口自动化时,生成的测试报告页面是英文的,如现在我们优化成汉文.操作如下: 1,下载汉化包 下载路径:https://i.cnblogs.com/Files.aspx?order=1 2,解压汉化 ...

  5. ant生成jmeter测试报告没有数据【已解决】

    1.如下图,在配置build时,到网上找配置文件,配置样式表文件名经常是jmeter-results-detail-report_21.xsl, 3.但是在其他版本可能被不是这个文件名,在jmeter ...

  6. Jmeter测试报告

    服务器: 2个CPU,每个CPU 1个核,4G内存  20G硬盘 客户端(Jmeter):2个CPU,每个2个核,4+8内存   500G硬盘 ---------------------------- ...

  7. Jmeter测试报告可视化(Excel, html以及jenkins集成)

    做性能测试通常在none GUI的命令行模式下运行Jmeter. 例如: jmeter -n -t /opt/las/JMeter/TestPlan/test.jmx -l /opt/las/JMet ...

  8. jmeter测试报告添加报告生成日期时间

    <!-- Defined parameters (overrideable) --><xsl:param name="showData" select=" ...

  9. jmeter性能测试 套路二

    1.一般我们不会通过下面这种去跑性能测试 2.我们会通过这种方式去跑性能测试 3.录制自动化 就用新的 4.录制性能测试  就用

随机推荐

  1. Go语言—— Array,Slice,Map 和 Set

    转自:https://se77en.cc/ Array(数组) 内部机制 在 Go 语言中数组是固定长度的数据类型,它包含相同类型的连续的元素,这些元素可以是内建类型,像数字和字符串,也可以是结构类型 ...

  2. PAT Basic 1075 链表元素分类 (25 分)

    给定一个单链表,请编写程序将链表元素进行分类排列,使得所有负值元素都排在非负值元素的前面,而 [0, K] 区间内的元素都排在大于 K 的元素前面.但每一类内部元素的顺序是不能改变的.例如:给定链表为 ...

  3. 浅谈angularJs

    在家都知道,angular 可以实现双项数据绑定,其中它的占位符是{{}},他是是MVC数据分离, 首先要在<html>或<body>中建一个<body ng-app=& ...

  4. Python+request 测试结果结合unittest生成测试报告《四》

    测试报告示例图:      目录结构介绍: 主要涉及更改的地方: 1.导入 Common.HTMLTestRunner2文件 2.run_test.py文件中新增测试报告相关的代码 具体代码实现: 1 ...

  5. 关键字local、global和内置函数【locals、globals】

    每个函数都有着自已的命名空间,叫做局部名字空间,它记录了函数的变量,包括函数的参数和局部定义的变量.每个模块拥有它自已的命名空间,叫做全局命名空间,它记录了模块的变量,包括函数.类.其它导入的模块.模 ...

  6. mongodb中find $ne null 与$exists的区别

    $ne null 会把空列表也算入,即使不存在. $exists 的识别效果就比较好 1.插入样例数据 db.nullexistsdemo.insertMany( [{ "name" ...

  7. 怎奈风云多变换,骚完一波还一波,记PHP mongodb驱动的2019年11月用法

    怎么,觉得pecl下一个扩展包,phpize make make install  php.ini里引用一下 mongodb.so就万事大吉了? Deeply Sorry!看到MongoDB\Driv ...

  8. Mybatis各种查询

    实体Emp private int empno; private String ename; private String job; private Integer mgr; private Date ...

  9. BZOJ 1778: [Usaco2010 Hol]Dotp 驱逐猪猡 (高斯消元)

    题面 题目传送门 分析 令爆炸概率为PPP.设 f(i)=∑k=0∞pk(i)\large f(i)=\sum_{k=0}^{\infty}p_k(i)f(i)=∑k=0∞​pk​(i),pk(i)p ...

  10. BZOJ 3931 / Luogu P3171 [CQOI2015]网络吞吐量 (最大流板题)

    题面 中文题目,不解释: BZOJ传送门 Luogu传送门 分析 这题建图是显然的,拆点后iii和i′i'i′连容量为吞吐量的边,根据题目要求,111和nnn的吞吐量看作∞\infty∞. 然后用di ...