首页 > 其他分享 >springcloud之nacos(二)Dubbo 融合 Nacos 成为注册中心

springcloud之nacos(二)Dubbo 融合 Nacos 成为注册中心

时间:2023-03-03 12:14:08浏览次数:48  
标签:Dubbo spring boot Nacos nacos springcloud alibaba com cloud

一、项目依赖

  首先在父pom中定义以下依赖管理器信息:(使用2.1版本nacos,提前安装)

<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-boot.version>2.3.12.RELEASE</spring-boot.version>
<spring-cloud-alibaba.version>2.2.6.RELEASE</spring-cloud-alibaba.version>
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>${spring-cloud-alibaba.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct</artifactId>
<version>1.4.1.Final</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-processor</artifactId>
<version>1.4.1.Final</version>
</dependency>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.10.6</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.78</version>
</dependency>
<dependency>
<groupId>com.landscapevip</groupId>
<artifactId>common-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>

其次在provider中定义
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-dubbo</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>


<dependency>
<groupId>com.landscapevip</groupId>
<artifactId>common-api</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.2</version>
</dependency>

<!-- 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
<!-- alibaba的druid数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
</dependency>
</dependencies>

二、provider代码:
1、在application.properties文件中声明:
spring.application.name=demo-service-provider
dubbo.protocol.id=dubbo
dubbo.protocol.name=dubbo
dubbo.protocol.port=-1
dubbo.cloud.subscribed-services=user-service-provider
dubbo.scan.base-packages=com.xx.xx
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
2、在接口实现类上声明:
@DubboService
public class SearchServiceImpl implements ISearchService {}
三、消费者代码
1、application.properties中配置
spring.application.name=demo-consumer-service
server.port=8080
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
spring.cloud.nacos.discovery.namespace=public
dubbo.protocol.id=dubbo
dubbo.protocol.name=dubbo
dubbo.protocol.port=-1
dubbo.cloud.subscribed-services=demo-service-provider
dubbo.scan.base-packages=com.xx.xx
2、注入接口添加注解
@DubboReference
ISearchService searchService;


 

标签:Dubbo,spring,boot,Nacos,nacos,springcloud,alibaba,com,cloud
From: https://www.cnblogs.com/dongzhensd/p/17166633.html

相关文章

  • 17.SpringCloud Alibaba-OSS
    开通阿里云OSShttps://www.aliyun.com/product/oss?spm=5176.19720258.J_3207526240.32.e93976f4xq6CZt创建Bucket   上传图片到OSS的方式由于上传需要验证所......
  • flask - fastapi (python 异步API 框架 可以自动生成swagger 文档) 常用示例 以及整合eu
    flask-fastapi(python异步API框架可以自动生成swagger文档)常用示例以及整合eurakanacosflask-fastapi  (python异步API框架 可以自动生成swagger文......
  • SpringCloud文件夹上传解决方案
    ​ 前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对Http协议较模糊,故这次采用渐进的方式来学习文件上传的......
  • 【Dubbo RPC 框架-服务发现&常用特性】
    零、本文纲要一、服务发现二、Dubbo快速入门(Spring+SpringMVC)①dubbo-interface模块②dubbo-service模块③dubbo-web模块三、其他特性①序列化implementsSerial......
  • 初始化安装后 Nacos 动态路由配置不生效
    一、问题描述1、每次初始化安装整套项目,包括安装Nacos和其他服务还有mysql,redis等其他中间件,安装后Nacos获取不到nacos路由信息(包括后续新写入动态路由配置)!只有手......
  • 记一次CPU占用持续上升问题排查(Nacos动态路由引起)
    1、问题描述在整个项目安装完成测试后一个周的时间里,IC服务(我们自己的服务名称)从刚开始CPU占用百分之一涨到了百分之六十左右,而且在持续上升,只有重启IC服务才会降下去,但是......
  • SpringCloud OpenFeign的使用
    SpringCloudOpenFeign的使用是什么:声明式http客户端。目的:使远程调用更简单作用:提供了http请求模板,仅需编写简单接口和插入注解,就可以定义好原始http请求的参数、格......
  • springcloud之nacos(一)安装
    一、首先下载nacos:https://github.com/alibaba/nacos/releases二、打开修改conf文件夹下的配置文件新建一个数据库nacos_dev,执行nacos-mysql.sql  执行完后,可以看......
  • 22-Dubbo
    1.Dubbo概述1.1Dubbo简介ApacheDubbo是一款高性能的JavaRPC框架。其前身是阿里巴巴公司开源的一个高性能、轻量级的开源JavaRPC框架,可以和Spring框架无缝......
  • 【SpringCloud】feign.codec.EncodeException: No qualifying bean of type
    错误描述在SpringCloud项目中通过OpenFeign远程调用时出现如下错误:feign.codec.EncodeException:Noqualifyingbeanoftype'org.springframework.boot.autocon......