专注于 JetBrains IDEA 全家桶,永久激活,教程
提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,等工具的永久激活

压力测试工具Jmeter5.X快速入门实战

接口压测和常用压力测试工具对比

  • LoadRunner 性能稳定,压测结果及细粒度大,可以自定义脚本进行压测,但是太过于笨重,功能比较繁多。
  • Apache AB(单接口压测最方便) 模拟多线程并发请求,ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载, 简单DDOS攻击等。
  • Webbench webbench首先fork出多个子进程,每个子进程都循环做web访问测试。子进程把访问的结果通过pipe告诉父进程,父进程做最终的统计结果。
  • Jmeter 开源免费,功能强大,在互联网公司普遍使用

    压测不同的协议和应用

    1. Web – HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)
    2. SOAP / REST Webservices
    3. FTP
    4. Database via JDBC
    5. LDAP 轻量目录访问协议
    6. Message-oriented middleware (MOM) via JMS
    7. Mail – SMTP(S), POP3(S) and IMAP(S)
    8. TCP等等

    使用场景及优点
    1)功能测试
    2)压力测试
    3)分布式压力测试
    4)纯Java开发
    5)上手容易,高性能
    6)提供测试数据分析
    7)各种报表数据图形展示

压测工具本地快速安装Jmeter5.x

使用环境:需要安装JDK8 以上 快速下载: jmeter.apache.org/download_jm….

85_1.png文档地址: jmeter.apache.org/usermanual/….

Jmeter5.x目录文件讲解和汉化操作

打开压缩包目录显示如下:

85_2.pngbin:核心可执行文件,包含配置

  • jmeter.bat: windows启动文件(window系统一定要配置显示文件拓展名,否则找不到对应文件)
  • jmeter: mac或者linux启动文件
  • jmeter-server:mac或者Liunx分布式压测使用的启动文件
  • jmeter-server.bat:window分布式压测使用的启动文件
  • jmeter.properties: 核心配置文件

extras:插件拓展的包

lib:核心的依赖包

Jmeter语言版本中英文切换:控制台修改 menu -> options -> choose language。在软件中修改语言只是暂时的,要想长久修改需在配置文件中修改。

配置文件修改 在bin目录进入 jmeter.properties,文件默认语言为 #language=en,改为 language=zh_CN即可永久变成中文。

windows系统进入bin目录下点击 jmeter.bat进入jmeter首页。

85_3.png

Jmeter5.X基础功能组件介绍线程组和Sampler

  • 添加->threads->线程组(控制总体并发)

    线程数:虚拟用户数。一个虚拟用户占用一个进程或线程

    准备时长(Ramp-Up Period(in seconds)):全部线程启动的时长,比如100个线程,20秒,则表示20秒内 100个线程都要启动完成,每秒启动5个线程

    循环次数:每个线程发送的次数,假如值为5,100个线程,则会发送500次请求,可以勾选永远循环

    85_4.png

  • 线程组->添加-> Sampler(采样器) -> Http (一个线程组下面可以增加几个Sampler)

    名称:采样器名称 注释:对这个采样器的描述

    web服务器: 默认协议是http 默认端口是80 服务器名称或IP :请求的目标服务器名称或IP地址 路径:服务器URL

    85_5.png

  • 查看测试结果

    线程组->添加->监听器->察看结果树 线程组->添加->监听器->聚合报告

    察看结果树:

    85_6.png聚合报告: 85_7.png

Jmeter5.x实战之压测结果聚合报告分析

聚合报告字段解释:
lable: sampler的名称
Samples: 一共发出去多少请求,例如10个用户,循环10次,则是 100
Average: 平均响应时间
Median: 中位数,也就是 50% 用户的响应时间
90% Line : 90% 用户的响应不会超过该时间
95% Line : 95% 用户的响应不会超过该时间
99% Line : 99% 用户的响应不会超过该时间
min : 最小响应时间
max : 最大响应时间
Error%:错误的请求的数量/请求的总数
Throughput: 吞吐量——默认情况下表示每秒完成的请求数(Request per Second) 可类比为qps、tps
KB/Sec: 每秒接收数据量

85_8.png

Jmeter5.x实战之压测结果聚合报告

测试发起400000请求,吞吐量6600+;测试过程中发现,当发起250000请求时,吞吐量已不在提升。

85_9.png注意: 接口的性能影响因素很多:机器的配置如CPU、内存、当前负载情况等,还有网络带宽因素影响,只能尽量减少影响因素。

文章永久链接:https://tech.souyunku.com/26356

未经允许不得转载:搜云库技术团队 » 压力测试工具Jmeter5.X快速入门实战

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们