| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> SpringCloud 整合 Dubbo -> 正文阅读 |
|
[Java知识库]SpringCloud 整合 Dubbo |
目录 1、介绍Dubbo有两种使用方式:
这篇博客所要介绍的就是第二种。 首先我们要想,为什么SpringCloud 要整合Dubbo?
在微服务当中,各个服务之间如果要进行通信,要进行调用的话,使用的就是Feign。 那Feign这种协议究竟好不好呢?
Dubbo框架的通信协议采用TCP协议(数据传输层)。 看下图: 我们可以看到Http 协议位于七层网络协议的应用层,TCP协议位于数据传输层,可以看到Http协议就是对TCP协议的封装,由于它做了更深层次的封装,所以它的效率可能就会低一些,特别是在高并发场景下性能可能会成为瓶颈。 所以这个时候,有的开发人员就会想了,既然Feign这个协议效率会存在瓶颈,我为什么不把Dubbo拿进来替换Feign呢? 哎,这个就是Dubbo 在SpringCloud 中的意义。
随着技术不断进步,现在Dubbo可以整合到Dubbo中去了。 借助Spring Cloud Alibaba提供了微服务开发的一站式解决方案,我们可以很轻松的完成Dubbo的整合。
? 2、代码实现介绍完Dubbo在springcloud 中 的作用,接下来我们就进入代码实战。 这里使用的Demo是以前写过的。具体看这个专栏的文章:SpringCloud_一切总会归于平淡的博客-CSDN博客 以前我们是使用Feign进行服务之间的通信,现在我们将其改造为Dubbo。 2.1 抽取公共模块抽取公共模块其实是比较简单的,我们来看看实现步骤: 1、创建dubbo-api模块 2、抽取公共模块 这里的实体类其实也可以放到另一个模块里然后进行引入,但是我太懒了,直接拉到dubbo-api模块来了,大家根据自己的习惯来吧。 2.2 改造服务提供者我们接下来去修改user-service实现dubbo-api中的UserService接口。并使用@DubboService注解替换@Service对外暴露dubbo服务。 1、首先我们要先在user-service 中引入依赖。
2、编写UserService实现类。 这样我们就向外暴露一个Dubbo服务。 3、编写application.yml 文件 ?
2.3 改造服务消费者1、首先在order-service 中引入依赖。
2、使用@DubboReference引入Dubbo服务,调用远程服务。 3、编写application.yml 文件 ?
3、启动测试重启提供者和消费者的服务,然后发送一个请求测试。 注意:
? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/10 15:27:07- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |