带你读《Apache Dubbo微服务开发从入门到精通》—— 一、 快速运行示例(4)

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 带你读《Apache Dubbo微服务开发从入门到精通》—— 一、 快速运行示例(4)

《Apache Dubbo微服务开发从入门到精通》——快速开始,一个 Dubbo Spring Boot 示例—— 一、 快速运行示例(3) /article/1225259



3) 服务端可以部署多个吗?

 

可以,本小节将演示如何启动一个服务端集群。

 

a) 启动一个注册中心,可以参考动手实践中第3小节的教程

 

b) 修改服务提供者返回的数据,让第一个启动的服务提供者返回hi, dubbo. I am provider 1.

 

修改1-basic/dubbo-samples-api/src/main/java/org/apache/dubbo/samples/provider/GreetingsServiceImpl.java文件的第25行如下所示。

 

image.png

 

c) 启动第一个服务提供者,可以参考动手实践中第4小节的教程

 

d) 修改服务提供者返回的数据,让第二个启动的服务提供者返回hi, dubbo. I am provider 2.

 

修改1-basic/dubbo-samples-api/src/main/java/org/apache/dubbo/samples/provider/GreetingsServiceImpl.java文件的第25行如下所示。

 

image.png

 

e) 启动第二个服务提供者,可以参考动手实践中第4小节的教程

 

f) 启动服务消费者,可以参考动手实践中第5小节的教程。多次启动消费者可以看到返回的结果是不一样的。

 

在dubbo-samples中也提供了一个会定时发起调用的消费端应用org.apache.dubbo.samples.client.AlwaysApplication,可以通过以下命令启动。

 

image.png

 

启动后可以看到类似以下的日志,消费端会随机调用到不同的服务提供者,返回的结果也是远端的服务提供者觉得其结果。

 

image.png

 

4) 这个用例复杂吗?

 

不,Dubbo只需要简单的配置就可以实现稳定、高效的远程调用。

 

以下是一个服务提供者的简单示例,通过定义若干个配置就可以启动。

 

image.png

 

以下是一个服务消费者的简单示例,通过定义若干个配置启动后就可以获取到对应的代理对象,之后用户完全不需要感知这个对象背后的复杂实现,一切只需要和本地调用一样就行了。

 

image.png

 

7. 更多

 

本用例介绍了一个RPC远程调用的基础流程,通过启动注册中心、服务提供者、服务消费者三个节点来模拟一个微服务的部署架构。

 

下一个教程中,将就服务提供者和服务消费者分别都做了什么配置进行讲解,从零告诉你如何搭建一个微服务应用。




相关文章
|
4天前
|
Dubbo Java 应用服务中间件
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
微服务学习 | Springboot整合Dubbo+Nacos实现RPC调用
|
4天前
|
安全 Java API
第7章 Spring Security 的 REST API 与微服务安全(2024 最新版)(上)
第7章 Spring Security 的 REST API 与微服务安全(2024 最新版)
52 0
第7章 Spring Security 的 REST API 与微服务安全(2024 最新版)(上)
|
4天前
|
Java API 微服务
【Spring Boot系列】通过OpenAPI规范构建微服务服务接口
【4月更文挑战第5天】通过OpenAPI接口构建Spring Boot服务RestAPI接口
|
4天前
|
Java 数据安全/隐私保护 Spring
Java 中 Spring Boot 框架下的 Email 开发
Java 中 Spring Boot 框架下的 Email 开发
35 2
|
4天前
|
前端开发 安全 Java
使用Spring框架加速Java开发
使用Spring框架加速Java开发
56 0
|
4天前
|
传感器 人工智能 前端开发
JAVA语言VUE2+Spring boot+MySQL开发的智慧校园系统源码(电子班牌可人脸识别)Saas 模式
智慧校园电子班牌,坐落于班级的门口,适合于各类型学校的场景应用,班级学校日常内容更新可由班级自行管理,也可由学校统一管理。让我们一起看看,电子班牌有哪些功能呢?
106 4
JAVA语言VUE2+Spring boot+MySQL开发的智慧校园系统源码(电子班牌可人脸识别)Saas 模式
|
4天前
|
Java Apache Spring
Spring BeanUtils与Apache BeanUtils提供基本属性复制,适用于简单需求
【5月更文挑战第4天】Spring BeanUtils与Apache BeanUtils提供基本属性复制,适用于简单需求;Cglib BeanCopier用于转换为Cglib代理对象;Apache PropertyUtils处理属性操作;Dozer支持复杂对象映射。选择工具取决于具体需求,如需精细控制或对象映射,推荐Dozer或Apache PropertyUtils。Apache BeanUtils可能因潜在的封装性破坏被禁用。
24 3
|
4天前
|
JSON Java Apache
Spring Cloud Feign 使用Apache的HTTP Client替换Feign原生httpclient
Spring Cloud Feign 使用Apache的HTTP Client替换Feign原生httpclient
|
4天前
|
Java Docker 微服务
|
4天前
|
IDE Java 开发工具
Spring Boot DevTools:加速开发的热部署工具
【4月更文挑战第28天】在Spring Boot的开发过程中,快速反馈和效率至关重要。Spring Boot DevTools是一个为开发者设计的模块,支持热部署(hot swapping),能够实现应用的快速重启和自动重载,极大地提高了开发效率。本篇博客将介绍Spring Boot DevTools的核心概念,并通过具体的实战示例展示如何在开发过程中利用这一工具。
24 0

推荐镜像

更多
http://www.vxiaotou.com