Jmeter压测dubbo接口

使用Jmeter进行压测的一个基本流程是:本地通过Jmeter的GUI界面调试好脚本-》脚本上传到发压机器-》发压机器通过命令行方式执行脚本进行压测-》回传压测结果文件-》通过本地Jmeter的GUI界面查看各项压测数据

1.windows环境核linux环境安装

1.1 本地windows下载安装

注意:本地已经安装好JDK并配置好环境变量,建议JDK8,其它版本不知道是否会有不兼容情况

下载地址,直接下载zip格式就好,本地解压就可以使用。
在这里插入图片描述

1.2 linux环境发压机器安装

注意:建议所有操作先切换至root用户下执行,否则可能出现各种莫名其妙的环境问题

  1. 登录到发压机器
  2. 安装jdk8并配置好环境变量
  3. 上传本地环境下载的Jmeter的zip包到工作目录(上传方式例如:xftp、rz命令等)
  4. 配置Jmeter的环境变量(vim /etc/profile添加如下配置并保存,source /etc/profile使配置生效) 在这里插入图片描述

export JMETER_HOME=/data/luzaichun/apache-jmeter-5.2.1
export PATH=$JMETER_HOME/bin:$PATH
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
  1. 使用jmeter -v检查是否安装配置好,正常会出现如下图案
    在这里插入图片描述

2.dubbo接口压测插件安装(压测dubbo接口才需要安装此插件)

插件下载地址
下载好以后,直接放到{JMETER_HOME}/lib/ext目录就ok(linux环境同样)
在这里插入图片描述
linux环境下,将下载到本地的dubbo压测插件上传到发压机器,然后放到jmeter的/lib/ext/目录。
在这里插入图片描述

3.windows运行jmeter

进入jmeter解压后的bin目录直接双击运行如下Jar包就可以
在这里插入图片描述

3.1 Dubbo接口压测
3.1.1 添加线程组

测试计划->添加->线程->线程组
在这里插入图片描述

3.1.2 配置线程数,多久拉起所有线程,循环次数

也可以先不设置,使用默认参数,等到线上压测时候,手动修改脚本
在这里插入图片描述

3.1.3 添加dubbo接口

线程组->添加→取样器→Dubbo Sample
在这里插入图片描述
服务提供方demo的dubbo配置。
在这里插入图片描述

3.1.4 本地测试脚本

如果本地无法进行脚本测试,请多次检查各项配置是确保正确,直接保存提交也可以。如:协议、注册中心地址、版本、Interface、Method、参数类型、参数值

Dubbo请求->添加→监听器→查看结果树

新增一个查看结果树,然后运行一次脚本,看请求结果是否正常,如果正常说明此脚本无问题。

点击保存按钮,会生成一个.jmx后缀的脚本文件。
在这里插入图片描述

3.1.5 上传脚本到发压机器并开始压测

上传jmx的脚本文件到发压服务器,可通过上文提到的文件传输助手上传
在这里插入图片描述
进行压测

jmeter -n -t PS-StressTest.jmx -l ./test1.jtl

  • -n :表示非GUI模式运行,否则会损耗性能
  • -t :指定压测脚本,如果其它目录可以指定绝对路径
  • -l :表示压测结果输出到test1.jtl文件
    在这里插入图片描述
    可以通过vim修改压测脚本,来修改线程数,循环次数等等参数。压测脚本的参数,都是和GUI界面配置的参数对应的,都可以做响应修改的。
    在这里插入图片描述
3.1.6 回传压测结果文件,通过本地GUI界面查看统计结果

添加一个监听器->汇总报告,然后浏览我们的压测结果文件,下方就能出来统计结果
在这里插入图片描述

使用过程中遇到的一些坑:

  1. 如果jmeter配置dubbo的group属性,在执行脚本时候会报些莫名奇妙错误。建议在进行dubbo接口压测时候,先不要设置provider的group,这样jmeter也不用设置。(后面测试又没问题了)
  2. 环境问题很恶心人,所以我建议,在做安装,上传脚本,上传dubbo接口压测插件这些动作,压测等动作都在root用户下执行
  3. 如果压测时候全部是Err 100%,建议检查下Duboo的接口,方法名,以及参数是否配置正确。
  4. 如果启动时候报如下这个错,请检查下dubbo压测插件包(jmeter-plugins-dubbo-2.7.x-jar-with-dependencies.jar)是不是正常下载完成,dubbo压测插件大小和实际大小是不是一样。
    在这里插入图片描述
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值