Dubbo 服务消费方|学习笔记

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 快速学习 Dubbo 服务消费方

开发者学堂课程【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.进行服务消费,参考如图:

image.png

(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,如下图:

image.png

启动完毕之后,先不调用,先看一下消费方,可以看到消费方也成功在显示在 dubbo 管理平台上,如下图:

image.png

接下来访问,可以看到成功调用了服务,如下图:

image.png

这说明已经成功通过 dubbo 来实现了远程 rpc 的调用,消费方开发完毕。

当前作为服务的消费方,对比服务提供方的配置文件少,不需要去配置当前的启动端口和 dubbo 的协议,只需要配置 zookeeper 的地址。


五、回顾整个 SpringBoot 整合 Dubbo 课程

1.搭建 zookeeper 注册中心集群

2.编写RPC服务接口(远程调用的一个服务名字,一个接口的权限类名)

3.编写服务提供者

4.编写服务消费者

为方便查看,搭建了一个 dubbo admin 平台,可以直观地看到,

用到了哪些服务的提供者和消费者。

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
6月前
|
XML Dubbo Java
【Dubbo3高级特性】「框架与服务」服务的异步调用实践以及开发模式
【Dubbo3高级特性】「框架与服务」服务的异步调用实践以及开发模式
151 0
|
29天前
|
监控 Dubbo Java
dubbo学习三:springboot整合dubbo+zookeeper,并使用dubbo管理界面监控服务是否注册到zookeeper上。
这篇文章详细介绍了如何将Spring Boot与Dubbo和Zookeeper整合,并通过Dubbo管理界面监控服务注册情况。
68 0
dubbo学习三:springboot整合dubbo+zookeeper,并使用dubbo管理界面监控服务是否注册到zookeeper上。
|
3月前
|
JSON Dubbo Java
【Dubbo协议指南】揭秘高性能服务通信,选择最佳协议的终极攻略!
【8月更文挑战第24天】在分布式服务架构中,Apache Dubbo作为一款高性能的Java RPC框架,支持多种通信协议,包括Dubbo协议、HTTP协议及Hessian协议等。Dubbo协议是默认选择,采用NIO异步通讯,适用于高要求的内部服务通信。HTTP协议通用性强,利于跨语言调用;Hessian协议则在数据传输效率上有优势。选择合适协议需综合考虑性能需求、序列化方式、网络环境及安全性等因素。通过合理配置,可实现服务性能最优化及系统可靠性提升。
53 3
|
3月前
|
缓存 Dubbo Java
Dubbo服务消费者启动与订阅原理
该文章主要介绍了Dubbo服务消费者启动与订阅的原理,包括服务消费者的启动时机、启动过程以及订阅和感知最新提供者信息的方式。
Dubbo服务消费者启动与订阅原理
|
3月前
|
Dubbo 网络协议 Java
深入掌握Dubbo服务提供者发布与注册原理
该文章主要介绍了Dubbo服务提供者发布与注册的原理,包括服务发布的流程、多协议发布、构建Invoker、注册到注册中心等过程。
深入掌握Dubbo服务提供者发布与注册原理
|
3月前
|
负载均衡 Dubbo Java
Dubbo服务Spi机制和原理
该文章主要介绍了Dubbo中的SPI(Service Provider Interface)机制和原理,包括SPI的基本概念、Dubbo中的SPI分类以及SPI机制的实现细节。
Dubbo服务Spi机制和原理
|
3月前
|
C# 开发者 Windows
勇敢迈出第一步:手把手教你如何在WPF开源项目中贡献你的第一行代码,从选择项目到提交PR的全过程解析与实战技巧分享
【8月更文挑战第31天】本文指导您如何在Windows Presentation Foundation(WPF)相关的开源项目中贡献代码。无论您是初学者还是有经验的开发者,参与这类项目都能加深对WPF框架的理解并拓展职业履历。文章推荐了一些适合入门的项目如MvvmLight和MahApps.Metro,并详细介绍了从选择项目、设置开发环境到提交代码的全过程。通过具体示例,如添加按钮点击事件处理程序,帮助您迈出第一步。此外,还强调了提交Pull Request时保持专业沟通的重要性。参与开源不仅能提升技能,还能促进社区交流。
44 0
|
5月前
|
Dubbo 前端开发 Java
Dubbo3 服务原生支持 http 访问,兼具高性能与易用性
本文展示了 Dubbo3 triple 协议是如何简化从协议规范与实现上简化开发测试、入口流量接入成本的,同时提供高性能通信、面向接口的易用性编码。
16631 13
|
3月前
|
缓存 负载均衡 Dubbo
Dubbo服务集群容错原理(重要)
该文章主要介绍了Dubbo服务集群容错的原理,包括集群容错技术的概念、Dubbo中使用的集群容错技术种类及其原理。
|
3月前
|
负载均衡 Dubbo 算法
Dubbo服务负载均衡原理
该文章主要介绍了Dubbo服务负载均衡的原理,包括Dubbo中负载均衡的实现位置、为什么需要负载均衡机制、Dubbo支持的负载均衡算法以及随机负载均衡策略的源码分析。
下一篇
无影云桌面