jmeter-plugins-dubbo & DevToolBox

jmeter-plugins-dubbo使用

A. 下载jmeter并安装,http://jmeter.apache.org/download_jmeter.cgi(文中使用的版本是3.3,理论上高版本也没问题)。java

B. 到github下载最新jmeter plugin包 https://github.com/ningyu1/jmeter-plugins-dubbo/tree/master/dist,请选择不带依赖包的版本(由于做者的dubbo版本是2.5.3,以及其余的包版本都与公司的不同),例如jmeter-plugins-dubbo-1.3.2-SNAPSHOT.jar。而后获取如下依赖包git

gson-2.8.2.jar
dubbo-2.8.4.jar  
javassist-3.21.0-GA.jar
jline-0.9.94.jar
log4j-over-slf4j-1.7.5.jar
netty-3.7.0.Final.jar
slf4j-api-1.7.5.jar
zkclient-0.2.jar
zookeeper-3.4.9.jar

将它们放到jmeter安装目录下的lib/ext。github

B. 运行jmeter图形程序,如图添加线程组,不进行压测的话,默认就是1个线程调用1次dubbo接口apache

 

C. 如图添加dubbo sample,并添加察看结果树json

 

 

 

D. 在dubbo sample中配置注册中心设置(协议以及地址)、provider相关信息(interface、method、参数)api

 

 

注:maven

1. args参数须要配置参数类型以及参数值,若是是对象等复杂参数,用json来设置值。而且须要提供参数类型,对应表以下:ide

 

 

2. register settings区域的protocal能够是zk也能够是simple,后者表示直连方式,能够脱离zk使用。工具

 

E. 配置好dubbo sample后,就能够运行jmeter来调用dubbo了,点击如图按钮测试

 

 

F. 返回结果要在以前添加的察看结果树获得,每一次运行都会有一个text产生,点击响应数据tab页能够看到返回实体的json

 

 

工具对比

DevToolBox 
优势:
a. 基于zk和jar包可分析出interface和method;不用手写,选择便可,减小出错
b. 参数被分析成模板,直接填写
c. 预置2.5.3 2.8.4 dubbo包以及其余依赖包(并自动分析其余版本的dubbo包),开箱即用
缺点:
a. 必须依赖zk
b. 必须依赖interface jar包
c. 没法压测
d. 须要安装maven而且有本地仓库(对QA可能不友好)

功能测试推荐使用DevToolBox 工具,由于总体效率和体验会更好。

压测或者是无interface相关包时,则可使用jmeter-plugins-dubbo

 

jmeter-plugins-dubbo 
优势:
a. 不依赖于zk,可直连
b. 基于泛化,不依赖于interface jar包
c. 可用jmeter快捷压测

缺点: a. 须要手写参数类型(须要一一对应),复杂对象也要手动构造 b. interface、method都要手写,对非开发人员不友好,有写错风险 c. 须要本身维护jmeter调用dubbo所需jar包,而且要安装jmeter,没法作到开箱即用

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息