Jmeter分布式测试dubbo接口2
上次我们将dubbo接口与jmeter集成起来,但是jmeter是由java实现的,本身有很多限制,无法实现高并发,我们需要借助分布式来实现大压力测试。
在上次的例子中,我们只是实现了简单的dubbo接口测试,下面我们来实现参数化,我们先创建一个txt,并在里面添加入参及出餐:
添加csv config
修改我们写死的beanshell脚本
在修改脚本之后我们来添加一个beanshell断言
在jmeter里单机运行一下


接下来我们来实现jmeter分布式运行,在实现分布式的时候,我们需要区分两个概念,控制端(Controller)和远程执行端(server_slave)。很简单,控制端用来控制脚本执行,而实际的执行由远程执行端来运行。
在配置客户端与远程执行端之前,我们需要在每个安装jmeter的机器上配置jdk环境变量与jmeter环境变量。
Jdk环境变量:
右键计算机属性---》高级系统设置---》环境变量---》
变量名:JAVA_HOME
变量值:C:Program FilesJavajdk1.8.0_91 (即jdk安装的位置)
变量名:Path (这个变量名已在系统变量中存在,现只需在这个值的后面添加以下变量值就可以了)
变量值:;%JAVA_HOME%in;%JAVA_HOME%jrein;
变量名:CLASSPATH
变量值:.;%JAVA_HOME%lib;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar;(记住前面的.)
打开cmd,输入java -version 回车,如果输出版本信息则安装成功,提示不是内部或外部命令则表示没有安装成功,可留言或自行百度解决。
Jmeter 安装
由于此软件是绿色版本,所以可解压在任意位置使用,解压后打开Jmeter目录.
右键计算机属性---》高级系统设置---》环境变量---》
变量名:JMETER_HOME
变量值:C:Program Filesapache-jmeter-3.2
变量名:Path (在后面添加以下变量值)
变量值:;%JMETER_HOME%in;
变量名:CLASSPATH
变量值:
%JMETER_HOME%libextApacheJMeter_core.jar;%JMETER_HOME%libjorphan.jar;
同样的,在cmd里运行jmeter,如果出现以下画面,就证明配置正确。

配置server_slave,在server slave上的jmeter/bin下面打开jmeter.properties

可以通过修改server port 为server slave修改监听端口

配置controller,打开controller上的jmeter/bin文件夹下的jmeter.properties

配置好之后,我们先启动server slave
在启动server slave的时候有时候会发现以下报错

在这里我们有两种解决方式
1, 在所有jmeter上进行设置,打开jmeter.properties,修改server.rmi.ssl.disable=true并打开配置

2,在各个jmeter端实现加密,双击运行jmeter/bin 下的create-rmi-keystore.bat

在启动之后,会询问很多问题,问什么回答什么就行

最后一步输入Y生成秘钥,将成功生成的秘钥rmi_keystore.jks 复制到每台jmeter上

通过以上两种方式,可以正常启动server slave与controller。
启动server slave
启动controller 端,并打开之前编写的测试dubbo的脚本。

点击在远端运行

这样,我们的jmeter分布式测试dubbo接口就实现了(过程中牵扯到所有代码以及文件都可以在GitHub上下载到https://github.com/chrisblue0605/dubboSample),希望能帮助到大家。
作 者:Testfan Chris
出 处:微信公众号:自动化软件测试平台
版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接
Jmeter分布式测试dubbo接口2的更多相关文章
- Jmeter分布式测试dubbo接口1
最近工作中接到一个需求,需要对一个Dubbo接口进行压力测试,测试其性能,之前一直使用jmeter做压力测试,在踏了好多坑之后,决定把这些记录下来,顺便也希望能帮助到大家. 开始测试之前,我们需要先知 ...
- jmeter测试dubbo接口
本文讲解jmeter测试dubbo接口的实现方式,文章以一个dubbo的接口为例子进行讲解,该dubbo接口实现的功能为: 一:首先我们看服务端代码 代码架构为: 1:新建一个maven工程,pom文 ...
- 『动善时』JMeter基础 — 52、使用JMeter测试Dubbo接口
目录 1.Dubbo介绍 2.准备测试Dubbo接口的环境 3.Dubbo Sample界面详解 4.Dubbo Sample组件的使用 (1)测试计划内包含的元件 (2)使用zookeeper协议请 ...
- JMeter测试dubbo接口总结
Jmeter 测试dubbo 接口 1. 安装JMeter 安装到/usr/local下 2. github上下载 jmeter-plugins-dubbo-x.x.x-jar-with-depend ...
- jmeter5.1测试dubbo接口
dubbo接口功能介绍 客户端输入uncleyong(当然,也可以是其他字符串),服务端返回hello uncleyong 开发dubbo服务jmeter客户端 idea中创建模块dubbo_jmet ...
- Jmeter分布式测试实战
一.Jmeter分布式测试基础 1.Jmeter分布式测试原因: 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对负载机的CPU和内存消耗比较大.所以当需要模拟数以万计的并 ...
- Jmeter分布式测试笔记
在性能测试过程中,如果要求并发数较大时(例如1000+),单机配置cpu与内存等无法支持,则需要使用Jmeter的分布式测试方法. 一.一般什么情况下需要分布式 1.前辈经验:比如机器i5双核的cpu ...
- 【Fine原创】JMeter分布式测试中踩过的那些坑
最近因为项目需要,研究了性能测试的相关内容,并且最终选用了jmeter这一轻量级开源工具.因为一直使用jmeter的GUI模式进行脚本设计,到测试执行阶段工具本身对资源的过量消耗给性能测试带来了瓶颈, ...
- jmeter分布式测试教程和远程的代理机无法连接网络的问题解决方法
一.Jmeter分布式执行原理: 1.Jmeter分布式测试时,选择其中一台作为控制机(Controller),其它机器做为代理机(Agent). 2.执行时,Controller会把脚本发送到每台A ...
随机推荐
- Android Studio安装Unable to access Android SDK add-on list处理方法
Unable to access Android SDK add-on list. 很多人写的加屏蔽语句,跳过检测,其实是不行的,因为最后还是要下载. 不翻墙的情况下,一般都是修改host文件:C:\ ...
- VirtualBox上Centos7磁盘扩容
VirtualBox上Centos7磁盘扩容 非常实用 点击直达
- 十二:jinja2模板中使用url_for
在页面中,有点击跳转到另一个地址的时候,可以使用url_for来指定要跳转的视图函数:{{ url_for('view_function') }} 如果该视图需要接收参数
- rhel安装ambari
RHEL/CentOS/Oracle Linux 6 On a server host that has Internet access, use a command line editor to p ...
- 4.1 primitive and reference values
ECMAScript variables may contains two different types of data: primitive values and reference values ...
- PPT鼠绘必须掌握的PPT绘图三大核心功能
在PPT制作教程栏目中,陆陆续续的分享了一系列通过合并形状功能来绘图的教程,绘制安卓机器人.绘制西瓜.绘制鸡蛋.其实,合并形状功能只是PPT绘图的一部分,而真正想要掌握PPT鼠绘,仅仅是会使用合并形状 ...
- qwebchannel.js
Qt与JavaScript交互通讯的桥梁 参考资料:[http://doc.qt.io/qt-5/qtwebengine-webenginewidgets-markdowneditor-resourc ...
- c++ 运算符 循环
运算符 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 杂项运算符 一.算术运算符 二.关系运算符 三.逻辑运算符 四.位运算符 位运算符作用于位,并逐位执行操作 假设如果 A = 60,且 ...
- 2019.8中关村、OGeek(oppo)比赛
中关村writeup https://mp.weixin.qq.com/s?__biz=MzU3MzczNDg1OQ==&mid=2247484106&idx=1&sn=62a ...
- USACO3.3 A Game【区间dp】
这道题也是一道非常有意思的区间$dp$,和在纪中的这道题有点像:取数游戏 (除了取数规则其它好像都一样诶) 当时在纪中的时候就觉得这个$dp$非常不好想,状态定义都不是很容易想到. 但是做过一道这种题 ...