开发者学堂课程【RocketMQ 知识精讲与项目实战(第二阶段):Dubbo 服务消费方】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/703/detail/12404
Dubbo 服务消费方
内容简介
一、添加依赖
二、配置文件
三、启动类
四、编写 Controller
五、回顾整个 Spring Boot 整合 Dubbo 过程
开发服务消费方需要经过以下四个步骤
一、添加依赖
1.打开消费方,编写副工程,如下:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
</parent>
2.以外部模式的身份启动消费方,外部依赖为:
<!--WEB-->
//可在前添加注释“外部”
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
3、再添加 zookeeper 相关依赖
包含: dubbo 依赖、 zookeeper 依赖、API 依,可参考笔记。
二、编写配置文件
1.配置文件的编写与生产者有很多相似的地方,包含当前已经应用的名称、 dubbo 消费的名称以及 id ,
参考如下:
# application.properties
spring.application.name=dubbo-demo-consumer
Spring.dubbo.application.name=dubbo-demo--consumer
Spring.dubbo.application.id=dubbo-demo-consumer
配置注册中心 zookeeper 地址,如下:
spring.dubbo.registry.address=zookeeper://
192.168.25.140:2181;zookeeper://
192.168.25.140:2182;zookeeper://192.168.25.140:2183
2.进行服务消费,参考如图:
(1)访问 zookeeper ,在 zookeeper 中,根据服务名称(接口全类名)去查找服务提供方地址,就需要知道服务中心的位置。
(2)在配置文件中输入 zookeeper 这一案例,将 zookeeper 三个节点分别添加。
三、编写启动类
参考内容如下:
Name:com.itheima.shop.springboot.dubbo.ConsumerApplication
@springbootApplication
@EnableDubboConfiguration
Public class ConsumerApplication {
Public static void main(String[]args) {
springApplication.run(ConsumerApplication.class,args);
}
}
启动类编写完毕,接下来需要调用服务网,编写下一步 controller。
四、编写 Controller
参考内容如下:
Name:controller.UserController
输入对应注解:
@RestController // 在这里响应数据不去调整页面,直接响应一个普通的字符串
配置一个它的地址:
@RequestMapping(“/user”)
Public class UserController {
由于现在的提供方由 dubbo 提供,所以要输入 dubbo 的注解:
@Reference//dubbo 提供
输入接口实践类:
private IUseService useService; //注入远端服务类
指定一个地址:
@RequestMappling(“/sayHello”)
public string sayHello(string name){
Return useService.sayHello(name);
}
}
启动后,可以看到 dubbo 的 logo,如下图:
启动完毕之后,先不调用,先看一下消费方,可以看到消费方也成功在显示在 dubbo 管理平台上,如下图:
接下来访问,可以看到成功调用了服务,如下图:
这说明已经成功通过 dubbo 来实现了远程 rpc 的调用,消费方开发完毕。
当前作为服务的消费方,对比服务提供方的配置文件少,不需要去配置当前的启动端口和 dubbo 的协议,只需要配置 zookeeper 的地址。
五、回顾整个 SpringBoot 整合 Dubbo 课程
1.搭建 zookeeper 注册中心集群
2.编写RPC服务接口(远程调用的一个服务名字,一个接口的权限类名)
3.编写服务提供者
4.编写服务消费者
为方便查看,搭建了一个 dubbo admin 平台,可以直观地看到,
用到了哪些服务的提供者和消费者。