Jmeter之dubbo接口性能测试

一、Dubbo简介
dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。

二、Dubbo接口测试方案

方法:使用jmeter测试dubbo接口

1、安装Dubbo插件

(1). jmeter本身并不支持dubbo接口的测试,需要下载第三方插件,然后将jar包放入${JMETER_HOME}\lib\ext路径下,重启即可。

(2). 插件下载地址:jmeter-plugins-dubbo

(3). 如果你使用了“xxx–with-dependencies.jar”这个插件包,一定要保证你的lib目录下,不能有如下5个基础包文件,因为jar包中已经包含了依赖包。

dubbo-2.5.3.jar

javassist-3.15.0-GA.jar

zookeeper-3.4.6.jar

zkclient-0.1.jar

netty-3.7.0-Final.jar

2、Dubbo Sample测试

(1).将定义dubbo接口jar包放到${JMETER_HOME}\lib\ext目录下(这个可以跟开发要),重启jmeter,将jar包读进内存。

备注:若dubbo接口还依赖其它的业务jar包,依赖jar包也要放到${JMETER_HOME}\lib\ext目录下(这个可以跟开发要)

(2).启动jmeter,添加线程组→Sampler→Dubbo Sample,界面如下:
在这里插入图片描述
(3).配置说明

Protocol:注册协议,包括none、zookeeper、multicast、Redis、simple;

Address:注册地址,dubbo服务的IP+Port:

①、若选择zookeeper,address填入zookeeper的服务地址,集群地址使用英文","分隔;

②、若选择dubbo直连,则将 Protocol 选择 none,address 填写 Dubbo 服务地址和端口;

Protocol:使用的dubbo协议,包括dubbo、rmi、hessian、webservice、memcached、redis,根据自己的协议类型选择对应的选项即可;

Timeout:请求超时时间,单位ms,根据dubbo具体配置填写;

Version:版本,dubbo不同版本之间差异较大,不同版本之间不能互相调用,这里指定dubbo版本,是为了方便识别和说明;

Retries:异常重试次数(类似这种分布式服务通信框架,大多都有重试机制,是为了保证事务成功率);

Cluster:集群类型,包括failover、failfast、failsafe、failback、failking;

Group:组类型,如果有的话,根据配置填写即可;也即GroupID,不是Maven配置中的和标签中的,而是写在方法上面的@Service注解中,开发一般知道。

Connections:连接数,同上,根据配置填写;

Async:服务处理类型,包括sync(同步)、async(异步),根据配置填写;

Loadbalance:负载均衡策略,包括random(随机)、roundrobin(轮询)、leastactive(最少活跃数)、consistenthash(一致性哈希);

Get Provider List:点击后,可获取zookeeper上注册的所有服务,然后可以下拉选择Interface和Method,也可以在下面直接输入Interface和Method

Interface:接口名(因为dubbo服务大多是开发根据规范自行命名的,因此这里需要填写完整的接口名,即包名+接口名,组成一个完整的接口路径,即完整的接口地址路径);

Method:当前接口下的方法名,按照开发提供的API文档填写即可;

Args:接口报文,根据API文档填写,如上图所示,添加输入行,输入对应的参数类型和值即可(参数类型和值如何定义填写,请参考上面的链接);

①、paramType:参数支持任何类型,基本类型(如 int、float、shot、double、long、byte、boolean、char等)直接写类型名,基础包装类直接使用java.lang下的包装类,自定义类使用类完整名称;具体可参考下方参数对照表

②、paramValue:基本类和基础包装类直接使用值,例如:int为1,boolean为true等,自定义类与List或者Map等使用json格式数据;具体可参考下方参数对照表

另附

1.接口报文参数说明:简单参数对照表 复杂参数对照表

2.dubbo接口、方法、参数及参数类型可咨询开发或查询接口文档、或通过反编译软件去查看。

3.Zookeeper服务或者Dubbo服务的IP、Port可咨询开发或者运维。

三、dubbo接口测试实战

(1)、dubbo接口设计文档
在这里插入图片描述
(2)dubbo接口jar包反编译在这里插入图片描述
(3)dubbo接口脚本设计
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值