Dubbo的学习

1.Dubbo的下载

官网:http://dubbo.io/

github:https://github.com/alibaba/dubbo/

2.dubbo-admin.war的生成

2.1、输入网址找到该页面

Branch:master没有dubbo-admin文件夹

dubbo yml配置 IP地址 dubbo的配置_war包


选择Branche:2.5.x

点击Clone or download,并点击Download ZIP进行下载

dubbo yml配置 IP地址 dubbo的配置_dubbo yml配置 IP地址_02

下载之后的文件

dubbo yml配置 IP地址 dubbo的配置_war包_03

解压后的文件目录

dubbo yml配置 IP地址 dubbo的配置_dubbo yml配置 IP地址_04

找到dubbo-admin目录,在目录上输入cmd回车进入windows的终端

dubbo yml配置 IP地址 dubbo的配置_服务提供者_05

在终端中输入下面命令

mvn install -Dmaven.test.skip=true

dubbo yml配置 IP地址 dubbo的配置_服务提供者_06

等待程序结束,找到war包地址

dubbo yml配置 IP地址 dubbo的配置_Dubbo的配置_07

生成war包,最终形态

dubbo yml配置 IP地址 dubbo的配置_Dubbo的配置_08

3.Dubbo的架构说明

Dubbo架构图:

dubbo yml配置 IP地址 dubbo的配置_Dubbo的配置_09

节点角色说明:

节点

角色说明

Provider

暴露服务的服务提供方

Consumer

调用远程服务的服务消费方

Registry

服务注册与发现的注册中心

Monitor

统计服务的调用次数和调用时间的监控中心

Container

服务运行容器

调用关系说明

  1. 服务容器负责启动,加载,运行服务提供者
  2. 服务提供者在启动时,向注册中心注册自己提供的服务
  3. 服务消费者在启动时,向注册中心订阅自己所需的服务
  4. 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者
  5. 服务消费者,从服务提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,在选另一台调用
  6. 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次同级数据给监控中心

Dubbo架构的特点

  • 连通性
  • 健壮性
  • 伸缩性
  • 向未来架构的升级性

4.Dubbo连接方式

4.1 Dubbo广播

这种方式是dubbo官方入门程序所使用的连接方式。在企业开发中不使用。

服务端配置

待续。。。

客户端配置

待续。。。

4.2 Dubbo直连

Dubbo直连,首先要取消广播,然后客户端直接连接到指定需要的服务的url获取服务。企业开发中的环境使用,但是生成环境很少使用。因为服务是直接调用,没有使用注册中心,很难对服务进行管理

服务端配置

待续。。。

客户端配置

待续。。。

4.3 Dubbo注册中心

Dubbo注册中心和广播配置类似,不过需要指定注册中心类型和注册中心地址。官方推荐zookeeper作为注册中心

服务端配置

待续。。。

客户端配置

待续。。。

5.Dubbo监控中心的使用

4.1 删除tocmat原来的ROOT目录

dubbo yml配置 IP地址 dubbo的配置_服务提供者_10

4.2 在原来目录下新创建一个空ROOT文件夹

dubbo yml配置 IP地址 dubbo的配置_dubbo yml配置 IP地址_11

4.3 将生成的dubbo-admin的war包上传到tomcat的ROOT目录下

dubbo yml配置 IP地址 dubbo的配置_dubbo yml配置 IP地址_12

4.4 进入ROOT目录下,执行下面命令进行解压,解压完成后移除该war包

[root@root ROOT]# jar -xf dubbo-admin-2.5.9.war

dubbo yml配置 IP地址 dubbo的配置_客户端_13

4.5 进入WEB-INF目录下,修改dubbo.properties文件,修改注册地址、账号和密码

dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.admin.root.password=root
dubbo.admin.guest.password=root

dubbo yml配置 IP地址 dubbo的配置_客户端_14

4.6 访问虚拟机路径,登录即可

dubbo yml配置 IP地址 dubbo的配置_客户端_15