dubbo环境搭建
安装zookeeper
下载zookeeper
Index of /dist/zookeeper/zookeeper-3.4.13
解压

修改配置文件
进入C:\Users\shenlibing\Downloads\zookeeper-3.4.13\conf将conf下的zoo_sample.cfg复制一份改名为zoo.cfg即可

dataDir临时数据存储的目录(可写相对路径)clientPort=2181zookeeper的端口号

测试

开启服务端

开启客户端

安装dubbo-admin管理控制台
dubbo本身并不是一个服务软件。它其实就是一个jar包能够帮你的java程序连接到zookeeper,并利用zookeeper消费、提供服务。
但是为了让用户更好的管理监控众多的dubbo服务,官方提供了一个可视化的监控程序,不过这个监控即使不装也不影响使用。
下载dubbo-admin

解压

修改dubbo-admin配置

指定zookeeper地址

打包dubbo-admin
1 | mvn clean package -Dmaven.test.skip=true |

运行dubbo-admin
1 | java -jar dubbo-admin-0.0.1-SNAPSHOT.jar |


访问
http://localhost:7001,默认使用`root/root `登陆

dubbo-helloworld
创建订单服务web模块


用户服务service模块


分包
版本一
- order-service-consumer订单消费层
- user-service-provider用户服务提供层

版本二
将公共的地址实体、订单接口、用户接口提取到公共接口层,新建一个公共接口层

- gmall-interface公共接口层
- order-service-consumer订单消费层
- user-service-provider用户服务提供层

代码
公共接口层代码
UserAddress.java
1 | package com.atguigu.gmall.bean; |
OrderService.java
1 | package com.atguigu.gmall.service; |
UserService.java
1 | package com.atguigu.gmall.service; |
订单消费层代码
OrderServiceImpl.java
1 | package com.atguigu.gmall.service.impl; |
用户服务提供层代码
UserServiceImpl.java
1 | package com.atguigu.gmall.service.impl; |
依赖配置
订单消费层需要引用公共接口层
pom.xml
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
用户服务提供层需要引用公共接口层
pom.xml
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
dubbo通信
为了让订单消费层和用户服务提供层可以通信,使用dubbo进行配置
用户服务提供层
导入依赖
- 导入
dubbo依赖(2.6.2) - 操作
zookeeper的客户端(curator)依赖
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
配置服务提供者
新建provider.xml文件

- 指定当前服务/应用的名字
- 指定注册中心的位置
- 指定通信规则(通信协议?通信端口)
- 暴露服务
provider.xml
1 |
|
测试服务提供者
新建MainApplication.java

MainApplication.java
1 | package com.atguigu.gmall; |
在dubbo控制台进行查看,可以看到有一个服务提供者



订单消费层
导入依赖
pom.xml
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
配置订单消费者
新建consumer.xml文件

consumer.xml
1 |
|
测试订单消费者
新建MainApplication.java

MainApplication.java
1 | package com.atguigu.gmall; |
运行MainApplication.java

扫描订单消费层

修改订单消费代码,将消费实现加入到容器,并把UserService注入进来

查看dubbo控制台,服务数:1,应用数:2,提供者数:1,消费者数:1

安装dubbo-monitor-simple
简单的监控中心
下载

解压

修改配置文件
进入C:\Users\shenlibing\Downloads\dubbo-admin-master\dubbo-monitor-simple\src\main\resources\conf目录,编辑dubbo.properties


打包
1 | mvn clean package -Dmaven.test.skip=true |

解压
解压dubbo-monitor-simple-2.0.0-assembly.tar.gz—>dubbo-monitor-simple-2.0.0-assembly.tar—>dubbo-monitor-simple-2.0.0

运行


访问
