基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

本文使用dubbo完成订单模块调用用户模块获取用户的相关信息,使用Zookeeper作文注册与发现中心

1、安装Zookeeper,使用版本zookeeper-3.4.12,官网下载 http://mirror.bit.edu.cn/apache/zookeeper/

解压缩完毕,进入conf文件夹,拷贝配置文件zoo.cfg,并修改dataDir为../data。在最外层新建文件夹data。

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

配置完毕后进入bin文件夹内双击启动zk中心

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

2、创建用户模块和订单模块和API模块三个模块均为maven项目,将所有的接口和实体类写到API接口项目中,实现类分别写入订单消费者和用户服务提供者

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

在订单消费者模块和用户服务提供模块pom文件分别导入API接口的依赖和dubbo、ZK需要的依赖

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

3、配置消费者的配置文件,消费者为订单服务

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

消费者实现

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

4、配置服务提供者的配置文件,服务提供者为用户服务

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

服务者方法

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

5、编写主方法,运行服务提供者和消费者方法,实验结果如下

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

dubbo监控安装完成后,分别在消费者和服务提供者配置文件中配置         

<!-- dubbo监控中心 .动态连接监控中心-->
        <dubbo:monitor protocol="register"></dubbo:monitor>

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)

代码包:https://download.****.net/download/weixin_39519416/10993031

 

-----------后续版本改进——基于IDEA的spring boot整合duboo+Zookeeper

1、导入dubbo-starter依赖和接口的依赖
      <!--引入API接口和实体类-->
      <dependency>
         <groupId>com.qty</groupId>
         <artifactId>api</artifactId>
         <version>0.0.1-SNAPSHOT</version>
      </dependency>
      <!-- Dubbo Spring Boot Starter -->
      <dependency>
         <groupId>com.alibaba.boot</groupId>
         <artifactId>dubbo-spring-boot-starter</artifactId>
         <version>0.2.0</version>
      </dependency>
2、配置文件分别配置服务提供者
  dubbo.application.name=user-provider  在dubbo上注册的名称
  dubbo.registry.address=10.12.52.50:2181 注册中心的地址
  dubbo.registry.protocol=zookeeper 注册协议是zookeeper

  dubbo.protocol.name=dubbo 指定通信的规则
  dubbo.protocol.port=20880
  dubbo.monitor.protocol=register 去注册中心寻找监控中心

  在需要注册的服务上将@Service

3、配置消费者
 dubbo.application.name=order-consumer
 dubbo.registry.address=zookeeper://10.12.52.50:2181
 dubbo.monitor.protocol=register

 使用注解注入暴露的服务
  @Reference

4、在启动代码中加入
  @EnableDubbo

基于Spring的简单Dubbo-消费者和服务者调用(包含Dubbo控制台、监控中心)