Jmeter- 笔记6 - 负载测试
普通场景介绍
1.线程数:并发用户数
2.Ramp-Up时间:启动时间(线程数的准备时间),在这个时间点结束时,所有用户都已运行起来
3.循环次数:每个线程数都要运行的次数。永远 和 调度器一起使用,在调度器时间内,所有线程数都一直运行
****************************************************************************************************
安装插件
把从官网下载jmeter-plugins-manager-1.6.jar (1.6是版本号)插件放在bin\ext文件夹下,重启jmeter,可以在菜单栏的选项 -> plugins manager,点击,进入如下页面。
Installed Plugins是已安装了的插件,Available Plugins是可安装的,Upgrades是已安装但可升级的插件,选择插件,点击右下角的按钮进行安装或更新。
在Available Plugins搜索 " jpgc - Standard Set"并安装,安装成功后,可以在右键->添加->线程(用户) 如下图,多了几个选项
负载测试的两种场景
一、jp@gc - Stepping Thread Group (deprecated) 线程组模拟线程数逐步递增场景
1. This group will start 100 threads:共100个线程
2. First, wait for 0 seconds; Then start 0 threads: 0秒启动0个线程
3.Next, add 10 threads every 30 second, using ramp-up 5 second : 每30秒增加一次线程,即5秒内启动10个线程,并运行30秒
4.Then hold load for 60 seconds:100个线程都启动后运行60秒
5.Finally, stop 5 threads every 1 seconds:每秒停5个线程,100个需要20秒
在这个负载线程组里,除了添加HTTP请求,还有搭配的监听器有
jp@gc - Active Threads Over Time 线程启动状态
jp@gc - Response Time Over Time 响应时间
jp@pc - Transaction per Second 每秒处理事务数
模拟访问某网站的用户递增场景,线程设置保留默认,即前面介绍的,运行后结果如下:
1.如下图,活跃线程趋势,10个线程5秒内启动,然后运行30秒,循环9次,第10次的10个线程启动后,当前即有100个线程,同时运行60秒,然后每秒下线5个线程。
2.如下图,横坐标为运行时间线,纵坐标为响应时间。下图的响应时间不太好看,区间间隔太大,贴近0秒,但突然跳到6秒,对比Active thread (上图)的线程数,在10个用户都启动完并运行30秒的时间内,响应时间突然达到6秒,虽然很快又降下来了,从图的趋势看,该网站在10个用户就有点不稳定了。其实根本原因应该是我网络不稳定的原因导致的,做性能测试不能用WiFi,要连无线,还要跟系统保持在同一网络上,否则数据是很不准的。
行业标准响应时间:0.5秒为最优,1.5秒为可接受,超过2秒性能就很差了。
3.每秒处理事务数,如下图,可以看出有请求是失败的(绿线)。结合响应时间趋势,可以看出响应时间高的时候,处理事务数低,时间低的时候,处理事务数高。能力有限,暂时还看不出其他什么信息
总结:从响应时间趋势图中找到响应时间是1.5秒的运行时间大概在什么时候,找到这个运行时间,对比Active Thread趋势中这个运行时间的线程数是多少,从而得出多少个用户同时使用的性能最佳
行业标准响应时间:0.5秒为最优,1.5秒为可接受,超过2秒性能就很差了。
二、jp@gc - Ultimate Thread Group 模拟阶段性线程递增场景
如下图,,Thread schedule里,一行代表一个阶段,Start Threads Count为启动线程数,Initial Delay为启动时间,Startup time是这个时间内这个阶段的线程数要启动完,Hold load for为线程启动完后持续运行时间,shutdown time是把该阶段所有线程下线。第二阶段的启动时间要晚于等于第一阶段全部结束,以此类推。
运行趋势分析同上面的逐步递增一样分析。
Jmeter- 笔记6 - 负载测试的更多相关文章
- AWS EC2+Docker+JMeter构建分布式负载测试基础架构
目录 概述及范围 前提条件 Part 1: Local setup-本地配置 Part 2: Cloud端基础架构--Infrastructure 总结: 原文链接 @ 概述及范围 本文介绍有关如何使 ...
- JMeter笔记4:测试结果-聚合报告的字段说明
1.Lable :定义 HTTP 请求名称2.Samples :表示这次测试中一共发出了多少个请求3.Average :平均响应时长---默认情况下是单个Request的平均响应时长,当使用Trans ...
- 使用JMeter进行Apache Kafka负载测试
1.卡夫卡负载测试 在这个Apache Kafka教程中,我们将了解如何使用Apache JMeter,如何在Apache Kafka上执行Kafka负载测试.此外,这个Kafka负载测试教程教我们如 ...
- JMeter进行Apache Kafka负载测试
1.卡夫卡负载测试 在这个Apache Kafka教程中,我们将了解如何使用Apache JMeter,如何在Apache Kafka上执行Kafka负载测试.此外,这个Kafka负载测试教程教我们如 ...
- jmeter笔记5
性能测试是任何分布式或Web应用程序测试计划的重要组成部分.在计划和开发周期中进行性能评价,可以保证交付给客户的应用程序满足客户对于高负载.可用性和可伸缩性的要求.提前确定软件的负载限制可以为适当地进 ...
- 使用JMeter进行负载测试——终极指南
这篇教程讨论的是JMeter,它是一款基于Java的.集合了几个应用程序.具有特定用途的负载和性能测试工具. 本篇主要涉及的内容: 解释一下JMeter的用途 JMeter的实现方式以及采用的技术 安 ...
- Apache JMeter开源压力测试/负载测试工具 2.12 官方最新版
软件介绍 Jmeter是一款使用Java开发的,开源免费的,测试工具, 主要用来做功能测试和性能测试(压力测试/负载测试),而且用Jmeter 来测试 Restful API, 非常好用. 如何学 ...
- 转:利用ant与jmeter实现负载测试自动化
性能测试一直以来都是测试领域一个令人争议的话题.测试的参考标准.评判依据及测试的方法选择都很难有一个统一的说法.但无论如何,对于需要能够承受一定压力而运行的程序来说,进行其进行功能和性能测试是一个必不 ...
- 开源负载测试工具k6比JMeter更容易的5件事
k6是GitHub上提供的开源负载测试工具.它是用Go编写的,并运行用JavaScript编写的测试脚本.它受到了开发人员,测试人员和DevOps团队的强烈兴趣,并拥有超过4400名GitHub明星. ...
- Jmeter负载测试例子
通过浏览器操作网站在jmeter录屏控制器显示录屏例子,并且通过这例子模拟多用户(线程)来负载测试. 工具/原料 Jmeter 浏览器 1.先在测试计划创建线程组和录制Case 1 1.1 选 ...
随机推荐
- TypeScript 入门自学笔记 — 类型断言(二)
码文不易,转载请带上本文链接,感谢~ https://www.cnblogs.com/echoyya/p/14558034.html 目录 码文不易,转载请带上本文链接,感谢~ https://www ...
- 基于MATLAB的手写公式识别(2)
基于MATLAB的手写公式识别 图像的预处理(除去噪声.得到后续定位分割所需的信息.) 预处理其本质就是去除不需要的噪声信息,得到后续定位分割所需要的图像信息.图像信息在采集的过程中由于天气环境的影响 ...
- Laravel artisan 命令
获取命令列表 php artisan Laravel Framework 7.26.0 Usage: command [options] [arguments] Options: -h, --help ...
- Windows之磁盘管理
0x01 磁盘管理概述 磁盘管理是一项计算机使用时的常规任务,它是以一组磁盘管理应用程序的形式提供给用户的,他们位于计算机管理控制台中,它包括查错程序和磁盘碎片整理程序以及磁盘整理程序.(来源百度 ...
- 基于Xposed Hook实现的Android App的协议算法分析小工具-CryptoFucker
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80962121 在进行Android应用的网络协议分析的时候,不可避免涉及到网络传 ...
- POJ3040给奶牛发工资
题意: 有n种硬币,每种硬币有mi个,然后让你给奶牛发工资,每周发至少c元(就是不找零钱的意思)然后问你能发几周?(硬币之间都是倍数关系) 思路: 这个题目做了两天,丢脸,看完 ...
- Python中hashlib模块的使用
hashlib是 python 下一款与加密相关的库包,提供摘要算法:md5.sha1.sha224.sha256.sha384.sha512.blake2b.blake2s.sha3_224.sha ...
- Windows核心编程 第十一章 线程池的使用
第11章 线程池的使用 第8章讲述了如何使用让线程保持用户方式的机制来实现线程同步的方法.用户方式的同步机制的出色之处在于它的同步速度很快.如果关心线程的运行速度,那么应该了解一下用户方式的同步机制是 ...
- android Javah生成JNI头文件
项目要用到c语言库,因此来学习下jni 首先是在cmd中使用javah,出现了javah不是内部或外部命令的错误提示,javah是jdk自带的工具,提示说明在系统环境变量中没有jdk的路径,或者配置错 ...
- apache-tomcat-7.0.92
链接:https://pan.baidu.com/s/1wnTSjTknYfaeDV_pakrC9g 提取码:see7