码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Jmeter性能测试(P1)


    文章目录

      • 一、环境搭建
      • 二、创建线程组执行测试
      • 三、性能测试中需要重点关注的指标
      • 四、jmeter性能测试常用的插件
      • 五、jmeter分布式环境搭建
      • 六、命令行执行性能测试

    一、环境搭建

    1. 安装java

      安装jdk1.8:默认安装

      配置环境变量:

      新建系统变量JAVA_HOME 值:jdk的安装路径
      img

      在path变量中新增两个值:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

      验证java安装成功

    2. 安装jmeter

      解压jmeter压缩包到指定路径

      双击jemeter.bat打开jmeter

    二、创建线程组执行测试

    1. 修改语言为中文

    2. 添加一个线程组

      后续我们要添加的请求都是要放在线程组下的。线程组,也是进行性能测的基本组成单位。

    3. 为线程组添加请求

    4. 添加一个查看结果树

      用来观察测试结果

    5. 添加一个聚合报告

      聚合报告中,可以看到当前线程组执行的汇总情况

      Label :当前测试的各个请求

      Average:当前请求平均响应时间

      Median:当前请求中位值,排在50%个请求的响应时间

      90%:当前请求中位值,排在90%个请求的响应时间

      95%:当前请求中位值,排在95%个请求的响应时间

      99% :当前请求中位值,排在99%个请求的响应时间

      Min : 最小响应时间

      MAX:最大响应时间

      Error:错误率

      Throughput:tps,每秒事务处理数

      Recive:接收到的字节

      Sent:发送的字节

    三、性能测试中需要重点关注的指标

    Ø 响应时间

    Ø 并发用户数

    Ø 吞吐量

    Ø TPS(每秒事物处理数)

    Ø 资源利用率(cpu、内存)

    四、jmeter性能测试常用的插件

    1. 下载jmeter-plugins-manager-1.4.jar,然后将该文件放到…\apache-jmeter-5.0\lib\ext路径下,然后重启jmeter

      重启后,就可以使用第三方插件了

      常用的插件如下:

      Custom Thread Groups

      该插件组可以提供额外模式的线程组,比如阶梯增加的线程组,做负载测试和压力测试是不错的选择。

      PerfMon

      该插件可以监听服务器的硬件性能, 包括cpu、内存、网络情况等,但该插件需要配合服务器端的ServerAgent使用。

      3 Basic Graphs

      该插件组中的插件可以将测试数据生成对应的图形。

      ​ Active Threads Over Time

      Response Times Over Time

      ​ Transactions per Second

      5 Additonal Graphs

    2. 监听服务器的性能

      首先添加PrefMon监听器


      然后去服务器里打开监听用的软件。


    3. Concurrency Thread Group

      利用该线程组可以实现阶梯增压。

    4. 登录场景下的压力测试

    五、jmeter分布式环境搭建

    1. 调度机和slave机要在同一个局域网下。

    2. 在调度机和slave机上都要安装相同版本的java和相同版本的jmeter
      建议,直接将调度机上配置好的jmeter复制到slave机上

    3. 修改调度机的配置文件jmeter.properties(该文件在jmeter安装目录的bin目录下)

      remote_hosts=Slave机器IP:端口(多台Slave机器则用英文逗号隔开)

      server.rmi.ssl.disable=true

      mode=Standard(开启标准模式可查看日志)


    4. 配置slave机

      配置slave机,修改jmeter.properties:

      server_port=端口

      server.rmi.port=端口

      server.rmi.ssl.disable=true

    5. 执行测试

      测试之前,要开启所有的slave机

      在jmeter路径的bin目录下,执行下列命名

      ./jmeter-server -Djava.rmi.server.hostname=当前slave机的IP地址

    六、命令行执行性能测试

    命令:

    jmeter -n -t 待测脚本.jmx -R slave机IP,slave2IP -l 测试结果.jtl
    
        -n:使用命令行模式运行
    
        -t:指定要运行的jmx脚本
    
        -R:指定使用那些slave节点压测
    
        -l:保存测试结果数据到指定文件
     
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
  • 相关阅读:
    计算机毕业设计Python+django网上求职招聘系统(源码+系统+mysql数据库+Lw文档)
    PDF格式分析(八十一)——声音注释(Sound)
    [附源码]Python计算机毕业设计Django人事系统
    MYSQL第一章节DDL数据定义语言的操作(DDL-数据库操作,DDL-操作表-查询,DDL-操作表-修改,数据库的基本类型)
    qemu-img操作文件出现“Could not read snapshots: File too large”问题解决办法
    Python网络爬虫介绍
    【图论】判环问题
    用python写MapReduce函数——以WordCount为例
    apt remove purge的区别 删除包的同时删除配置文件
    2023年 python结合excel实现快速画图(零基础快速入门)
  • 原文地址:https://blog.csdn.net/sugela8/article/details/126278579
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号