本文使用dubbo完成订单模块调用用户模块获取用户的相关信息,使用Zookeeper作文注册与发现中心
1、安装Zookeeper,使用版本zookeeper-3.4.12,官网下载 http://mirror.bit.edu.cn/apache/zookeeper/
解压缩完毕,进入conf文件夹,拷贝配置文件zoo.cfg,并修改dataDir为../data。在最外层新建文件夹data。
配置完毕后进入bin文件夹内双击启动zk中心
2、创建用户模块和订单模块和API模块三个模块均为maven项目,将所有的接口和实体类写到API接口项目中,实现类分别写入订单消费者和用户服务提供者
在订单消费者模块和用户服务提供模块pom文件分别导入API接口的依赖和dubbo、ZK需要的依赖
3、配置消费者的配置文件,消费者为订单服务
消费者实现
4、配置服务提供者的配置文件,服务提供者为用户服务
服务者方法
5、编写主方法,运行服务提供者和消费者方法,实验结果如下
dubbo监控安装完成后,分别在消费者和服务提供者配置文件中配置
<!-- dubbo监控中心 .动态连接监控中心-->
<dubbo:monitor protocol="register"></dubbo:monitor>
代码包:https://download.csdn.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