各位:
以下是本周第一次双师压测结果,后续优化后会更新优化结果。
 
配置:
压测环境:   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. 【问题】XShell连接不上Debian root用户

    类似文章:https://www.lianst.com/3231.html 修改此文件 重启ssh服务 ssh restart有问题,换一条命令OK 你的Linux发行版可能不一样,针对CentOS参 ...

  2. RT-Thread--线程管理

    线程管理的功能特点 RT-Thread系统中线程是调度的最小单位: 线程分为:系统线程和用户线程,系统线程是由 RT-Thread 内核创建的线程,用户线程是由应用程序创建的线程,这两类线程都会从内核 ...

  3. Gradle 的使用

    gradle 工具类似于maven工具,但是gradle 减少了maven中的那种使用xml 中大量的配置文件来下载依赖的jar包.而gradle大大简化了,能够很快速的添加依赖.具体关于gradle ...

  4. JavaScript 页面渲染

    1. 从输入url到得到html的详细过程 1.1 加载资源的形式      输入 URL 或跳转页面 加载 html 1.2 加载一个资源的过程 浏览器根据DNS服务器得到域名的IP地址 向这个IP ...

  5. JavaScript查漏补缺

    js函数定义的三种方式: 函数声明 function sum(a,b){ return a+b } 函数表达式 var sum = function(a,b){ return a+b } Functi ...

  6. JS 自定义组件

    经常会用到JS插件,但从未研究过插件的写法 目前主流的写法有多种,各有各的优缺点,下面,我就以最常规的一种写法举例 // plugin.js ;(function(undefined) {//防止出现 ...

  7. VS 运行库MT、MD的区别

    https://www.jianshu.com/p/f43afc1d5946 VC项目属性→配置属性→C/C++→代码生成→运行时库 可以采用的方式有:多线程(/MT).多线程调试(/MTd).多线程 ...

  8. 调整swt table的行高

    table.addListener(SWT.MeasureItem, new Listener() { public void handleEvent(Event event) { // 设置行高度 ...

  9. Python服务器开发 -- 网络基础

    Python服务器开发 -- 网络基础   网络由下往上分为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层.HTTP是高层协议,而TCP/IP是个协议集,包过许多的子协议.... 网络由下 ...

  10. UVA323 Jury Compromise

    思路:背包类DP 提交:3次 错因:没有注意得分的上下界导致 RE 显示 WA 题解: 我们很容易的想到把两种分数做一个差,来尽量背到 \(0\) . 那最大化总分呢?这时我们可以用两种分数的和作为物 ...