一Dubbo简介
1什么是Dubbo
Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。
Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
2架构
3节点角色说明
节点 | 角色说明 |
Provider | 暴露服务的服务提供方 |
Consumer | 调用远程服务的服务消费方 |
Registry | 服务注册与发现的注册中心 |
Monitor | 统计服务的调用次数和调用时间的监控中心 |
Container | 服务运行容器 |
4调用关系说明
- 服务容器负责启动,加载,运行服务提供者。
- 服务提供者在启动时,向注册中心注册自己提供的服务。
- 服务消费者在启动时,向注册中心订阅自己所需的服务。
- 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
- 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
- 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心。
二Dubbo接口测试流程
1.下载并安装代码编辑器eclipse或intellij idea,下载maven,maven中config/settings.xml中要添加公司(测试人员公司)的maven库,不然被测dubbo服务jar包下载会失败。
2.由于Dubbo协议接口跟Http协议接口不同,建议创建maven项目。
3.创建好maven项目后我们来配置pom.xml文件,配置所需jar包和所要测试的dubbo服务,需要什么jar包就配置什么jar包,配置方法如图所示
4.dubbo配置
我们在工程目录下/src/main/新建resources文件夹,创建dubbo-config.xml
:dubbo服务注册配置,填zookeeper信息:dubbo应用名称,此处可以随便填写,比如我填写的项目名:填写远程服务代理,说直白点就是你要测试的接口,包名+接口名,以及dubbo服务url:消费端的一些缺省配置
:dubbo服务注册配置,填zookeeper信息:dubbo应用名称,此处可以随便填写,比如我填写的项目名:填写远程服务代理,说直白点就是你要测试的接口,包名+接口名,以及dubbo服务url:消费端的一些缺省配置
5.加载dubbo-config.xml
6.编写测试代码
说明
上述就是简单的dubbo协议接口测试,这里只是给初学者一个思路,仅供参考。