jmeter-plugins-dubbo使用

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

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。然后获取以下依赖包

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。

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

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

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

注:

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

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,无法做到开箱即用

jmeter-plugins-dubbo & DevToolBox的更多相关文章

  1. jmeter测试dubbo接口

    本文讲解jmeter测试dubbo接口的实现方式,文章以一个dubbo的接口为例子进行讲解,该dubbo接口实现的功能为: 一:首先我们看服务端代码 代码架构为: 1:新建一个maven工程,pom文 ...

  2. Jmeter实现dubbo接口压测案例

    当前项目中重构了消息服务,需要对消息服务接口做性能压测,评估消息服务的性能情况 通过和开发对接,目前消息服务是通过dubbo接口对内提供服务,所以才有了这边文章的记录 最初的压测这个dubbo接口有三 ...

  3. 使用Jmeter测试Dubbo接口(参数设置篇)

    WebSocket接口需要下载dubbo插件才能使用 本次下载的版本为jmeter-plugins-dubbo-1.3.6,下载完成后jar文件放到\lib\ext目录下 由于工作需要,最近需要对du ...

  4. jmeter:dubbo接口测试

    最近工作中接到一个需求,需要对一个MQ消息队列进行性能测试,测试其消费能力,开发提供了一个dubbo服务来供我调用发送消息. 这篇博客,介绍下如何利用jmeter来测试dubbo接口,并进行性能测试. ...

  5. jmeter进行dubbo接口测试

    最近工作中接到一个需求,需要对一个MQ消息队列进行性能测试,测试其消费能力,开发提供了一个dubbo服务来供我调用发送消息. 这篇博客,介绍下如何利用jmeter来测试dubbo接口,并进行性能测试. ...

  6. jmeter的dubbo压测,依赖jar包要放到执行机的lib/ext下

    对于jmeter的dubbo压测场景的master-slave结构: 即master的jmeter进行任务的下发和报告的生成,slave进行任务的执行 因为dubbo压测需要依赖很多三方jar包,那么 ...

  7. 【Jmeter】- 使用 jmeter 进行 dubbo 接口测试

    大家都知道 dubbo 是一个优秀 rpc 框架,它一般(dubbox 除外)通过对外提供 tcp协议的接口进行外部调用.而我们日常使用的测试工具 jmeter 并不支持 dubbo 协议的请求.所以 ...

  8. 『动善时』JMeter基础 — 52、使用JMeter测试Dubbo接口

    目录 1.Dubbo介绍 2.准备测试Dubbo接口的环境 3.Dubbo Sample界面详解 4.Dubbo Sample组件的使用 (1)测试计划内包含的元件 (2)使用zookeeper协议请 ...

  9. Jmeter测试dubbo接口填坑

    通过jmeter测试dubbo的方法网上有很多帖子,需要的自己度娘去就可以. 使用的时候有个问题需要提示一下,因为我碰到了,还耽误了一些时间,不说中间的过程.直接说处理方式: 问题是这样的: 将dub ...

  10. JMeter测试dubbo接口总结

    Jmeter 测试dubbo 接口 1. 安装JMeter 安装到/usr/local下 2. github上下载 jmeter-plugins-dubbo-x.x.x-jar-with-depend ...

随机推荐

  1. textArea中的maxlength是无效的 解决办法

    --------------------------------------------------------------------------------------   <s:texta ...

  2. CentOS(五)--Linux系统的分区概念

    一.系统分区 首先先普及一下有关系统分区的一些知识: 硬盘分区有三种,主磁盘分区.扩展磁盘分区.逻辑分区. 一个硬盘主分区至少有1个,最多4个,扩展分区可以没有,最多1个.且主分区+扩展分区总共不能超 ...

  3. Android中处理崩溃异常 (转)

    大家都知道,现在安装Android系统的手机版本和设备千差万别,在模拟器上运行良好的程序安装到某款手机上说不定就出现崩溃的现象,开发者个人不可能购买所有设备逐个调试,所以在程序发布出去之后,如果出现了 ...

  4. erlang的格式化字符串

    往pgsql里面写数据的时候,不能双引号,开始纠结的不行,用拼字符串的形式,后来发现可以格式化字符串,泪奔 data_format.erl -module(data_format). -export( ...

  5. FPGA常用设计思想与基本模块划分

    常用设计思想与技巧 (1)乒乓操作; (2)串并转换; (3)流水线操作; (4)异步时钟域数据同步.是指如何在两个时钟不同步的数据域之间可靠地进行数据交换的问题.数据时钟域不同步主要有两种情况: ① ...

  6. java多线程(1) 线程的基本概念

    一.线程的基本概念: 线程是一个程序里面不同的执行路径. 程序里面不同的执行路径,每一个分支都是一个线程.   进程:静态的概念.机器上的一个class文件,机器上的一个exe文件,这叫一个进程. 机 ...

  7. 透过一个实例理解C++语言的explicit关键字

    我们先看一段代码:    建立people.cpp 文件,然后输入下列内容:class People{    public:      int age;     explicit People (in ...

  8. linux c下,从路径名中分离文件名

    首先介绍一些查找字符的函数 1.strrchr 头文件:#include <string.h> strrchr() 函数用于查找某字符在字符串中最后一次出现的位置,其原型为:     ch ...

  9. oracle 索引使用小结

    1. 普通索引 create index my_index on test (col_1); 可创建合并两列或多列的索引,最多可将32列合并在一个索引中(位图索引最多可合并30列) create in ...

  10. Linux - samba 服务

    暂时关闭 iptables 防火墙 [root@sch01ar ~]# systemctl stop iptables.service 暂时关闭 firewall 防火墙 [root@sch01ar ...