微服务-nacos-dubbo(推荐)
2020/2/27 17:15:53
本文主要是介绍微服务-nacos-dubbo(推荐),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
问题:
Dubbo和Springcloud一般都是分开的。 把Dubbo整合到SpringCloud系列中去。 使用Springcloud系列的时候。希望用Dubbo来做服务管理(因为dubbo这方面很优秀) 复制代码
原理:
使用SpringcloudAlibaba整合dubbo 复制代码
文档:
nacos官方文档: https://nacos.io/zh-cn/docs/quick-start.html dubbo官方文档: http://dubbo.apache.org/zh-cn/docs/user/quick-start.html SpringCloudAlibaba地址: https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md 复制代码
步骤
关于下载和启动nacos就先看这个 https://juejin.im/user/5a797e0a5188257a7c6c3400 的1-2步 1.搭建一个普通的maven项目(api) 2.搭建一个提供者项目整合nacos和dubbo(provider)(2,4一样) 3.编写配置文件和测试相关代码 4.搭建一个消费者项目整合nacos和dubbo(consumer)(2,4一样) 5.编写配置文件和测试相关代码 复制代码
1.搭建一个普通的maven项目(api)
并写一个简单的接口和方法
2.搭建一个提供者项目整合nacos和dubbo(provider)
1.注意springBoot的版本。这里用2.0.5.RELEASE
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.5.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> 复制代码
2.引入Springcloud和SpringcloudAlibaba注意对应的版本。
<dependencyManagement> <dependencies> <!--F版本--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Finchley.SR4</version> <type>pom</type> <scope>import</scope> </dependency> <!--SpringCloudAlibaba还没正式归入到cloud版本里面去,所以需要额外添加--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> <version>2.0.1.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> 复制代码
3.引入dubbo和nacos
<!--nacos--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <!--dubbo--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-dubbo</artifactId> </dependency> 复制代码
4.引入api
<!--上面定定义好的api项目--> <dependency> <groupId>com.dripy</groupId> <artifactId>nacos-dubbo-api</artifactId> <version>1.0-SNAPSHOT</version> </dependency> 复制代码
3.编写配置文件和测试相关代码
1.配置文件填写项目相关信息、nacos地址、dubbo的注册中心地址
spring.application.name=nacos-dubbo-provider server.port=9870 # 注册中心nacos地址 spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 # dubbo的配置 # 扫描路径。别混乱了。。 dubbo.scan.base-packages=com.dripy.nacosdubboprovider.model # 使用Springcloud的注册中心 dubbo.registry.address=spring-cloud://localhost # 防止dubbo协议端口冲突 dubbo.protocol.port=-1 复制代码2.启用nacos注册发现
启动类添加 @EnableDiscoveryClient注解 复制代码
3.编写测试实例
实现步骤1里面的接口。 并使用@Service注解。注意是Dubbo的注解,不是Spring的。 org.apache.dubbo.config.annotation 复制代码
4.搭建一个消费者项目整合nacos和dubbo(consumer)
和步骤2一模一样 复制代码
5.编写配置文件和测试相关代码
1.配置文件填写项目相关信息、nacos地址、dubbo的注册中心地址
spring.application.name=nacos-dubbo-consumer server.port=9871 spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 # dubbo相关 # 使用Srpingcloud的注册中心 dubbo.registry.address=spring-cloud://localhost # 扫描路径。别混乱了。。 dubbo.scan.base-packages=com.dripy.nacosdubboconsume.controller # 这里比消费者多了一个属性 服务提供者的名称。用于定于那个服务 spring.application.name dubbo.cloud.subscribed-services=nacos-dubbo-provider 复制代码
2.启用nacos注册发现
启动类添加 @EnableDiscoveryClient注解 复制代码
3.编写测试实例
编写一个测试接口, 使用@Reference注入接口。注意是Dubbo的注解,不是Spring的。 复制代码4.测试
总结:
1. @Service,@Reference这两个路径别写错了。这是dubbo的属性。 2.jar包的groupId别写错了。因为alibaba的版本不一样,引用的也不一样。 3.dubbo扫描路径写对,不要写错了,否者会注册不了服务。 其他应该就没了。遇到问题,从头捋一遍,看看漏了什么没有。 复制代码
项目整体结构图:
这篇关于微服务-nacos-dubbo(推荐)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-04el-table 开启定时器下,表格的选中状态会消失是什么原因-icode9专业技术文章分享
- 2024-10-03如何安装和初始化飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03如何安装 App 并连接到飞牛 NAS?-icode9专业技术文章分享
- 2024-10-03如何安装飞牛 TV 并连接到影视服务器?-icode9专业技术文章分享
- 2024-10-03如何在PVE和ESXI上安装飞牛私有云 fnOS?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS安装系统异常情况处理-icode9专业技术文章分享
- 2024-10-03飞牛NAS如何创建存储空间?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS硬盘会自动休眠吗?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何安装飞牛影视和创建媒体库?-icode9专业技术文章分享
- 2024-10-03fnOS国产最强NAS如何为家人朋友开通影视账号?-icode9专业技术文章分享