Dubbo项目将Nacos作为其注册中心和配置中心

Nacos提供了四个主要功能

  • 服务发现和服务运行状况检查(服务治理):Nacos使服务易于注册自己并通过DNS或HTTP接口发现其他服务。Nacos还提供服务的实时运行状况检查,以防止向不正常的主机或服务实例发送请求。
  • 动态配置管理:动态配置服务使您可以在所有环境中以集中和动态的方式管理所有服务的配置。Nacos消除了在更新配置时重新部署应用程序和服务的需求,这使配置更改更加有效和敏捷。
  • 动态DNS服务:Nacos支持加权路由,使您可以更轻松地在数据中心内的生产环境中实施中间层负载平衡,灵活的路由策略,流控制和简单的DNS解析服务。它可以帮助您轻松实现基于DNS的服务发现,并防止应用程序耦合到特定于供应商的服务发现API。
  • 服务和元数据管理(分布式配置):Nacos提供了易于使用的服务仪表板,可帮助您管理服务元数据,配置,kubernetes
    DNS,服务运行状况和指标统计信息。

Nacos既可以作为服务治理中心(可以替代 Spring Cloud Eureka)也可以作为配置中心(可替代 Spring Cloud Config)。
Nacos作为一个单独的服务进行部署,不需要用户搭建项目作为服务治理节点。

Dubbo整合Nacos

服务提供者的相关配置

注入依赖

<!--dubbo依赖-->
<dependency><groupId>com.alibaba</groupId><artifactId>dubbo</artifactId><version>2.6.6</version>
</dependency><!-- Nacos Spring dependency -->
<dependency><groupId>com.alibaba</groupId><artifactId>dubbo-registry-nacos</artifactId><version>0.0.2</version>
</dependency><dependency><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId><version>0.6.1</version>
</dependency><dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId>
</dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>2.1.2.RELEASE</version>
</dependency>

dubbo-provider.xml:以xml形式配置dubbo

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:dubbo="http://dubbo.apache.org/schema/dubbo"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-4.3.xsdhttp://dubbo.apache.org/schema/dubbohttp://dubbo.apache.org/schema/dubbo/dubbo.xsd"><dubbo:application name="springcloud-alibaba-producer" /><dubbo:registry id="nacos_service"  address="nacos://127.0.0.1:8848" timeout="15"/><!-- 用dubbo协议在20880端口暴露服务 --><dubbo:protocol name="dubbo"  port="20880"  threads="1000" /><!-- dubbo监控配置 --><dubbo:monitor protocol="registry" /><!-- dubbo管理平台接口 --><bean id="UserService" class="com.luo.producer.service.impl.UserServiceImpl" /><dubbo:service interface="com.luo.api.service.IUserService" ref="UserService"  cluster="failfast"registry="nacos_service"   /></beans>

调用接口

public interface IUserService {public String ceshi(String input);
}

服务的实现类

public class UserServiceImpl implements IUserService {@Overridepublic String ceshi(String input) {return "Hello World,"+input;}
}

服务调用者的相关配置

注入依赖

<!--dubbo依赖-->
<dependency><groupId>com.alibaba</groupId><artifactId>dubbo</artifactId><version>2.6.6</version>
</dependency><!-- Nacos Spring dependency -->
<dependency><groupId>com.alibaba</groupId><artifactId>dubbo-registry-nacos</artifactId><version>0.0.2</version>
</dependency><dependency><groupId>com.alibaba.nacos</groupId><artifactId>nacos-client</artifactId><version>0.6.1</version>
</dependency><dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId>
</dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>2.1.2.RELEASE</version>
</dependency>

bootstrap.properties 配置Nacos配置中心

#应用名
spring.application.name=springcloud-alibaba-consumer
#配置文件的前缀
spring.cloud.nacos.config.prefix=springcloud-alibaba-consumer
#当前生效的配置文件
spring.profiles.active=Test#配置中心路径
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
#配置文件后缀
spring.cloud.nacos.config.file-extension=properties

服务降级的实现类

public class MockUserService implements IUserService {public MockUserService(){}@Overridepublic String ceshi(String input) {return "服务暂时不可用,请重试";}
}

Controller层

@RestController
@RefreshScope
public class DubboComsumerController {@AutowiredIUserService userService;@Value("${name:未知者}")private String name;@RequestMapping("/hello")public String hello(){return userService.ceshi(name);}
}

启动项目,进行验证

第一步:Nacos管理平台,查看到服务的注册信息

第二步:访问localhost:8081/hello,进行验证

第三步:配置Nacos分布式配置文件

第四步:再次访问localhost:8081/hello,进行验证

第五步:关闭服务提供者后,再次访问:localhost:8081/hello,进行验证

该项目源码:github

Dubbo整合Nacos相关推荐

  1. Dubbo基础专题——第四章(Dubbo整合Nacos分析细节点)

    应广大的读者要求,也是公司目前需要一些支持,我就自己亲身搭建一个Springboot+nacos+dubbo的框架和项目,并演示dubbo面对一些系统的 业务场合,应该怎么去做支持,文章中我会先贴出代 ...

  2. SpringBoot+ Dubbo + Mybatis + Nacos +Seata整合来实现Dubbo分布式事务

    作者:请叫我东子 https://blog.csdn.net/u010046908/article/details/100536439 1.简介"本文主要介绍SpringBoot2.1.5 ...

  3. Dubbo 融合 Nacos 成为注册中心

    Nacos 作为 Dubbo 生态系统中重要的注册中心实现,其中 dubbo-registry-nacos 则是 Dubbo 融合 Nacos 注册中心的实现. 预备工作 当您将 dubbo-regi ...

  4. 分布式服务框架Dubbo集成Nacos框架实现注册中心

    在讨论Nacos之前,我们先讨论一下CAP理论 CAP理论是分布式场景绕不开的重要理论 一致性:所有节点在同一时间具有一样的数据: 可用性:保证每个请求不管成功还是失败都有响应: 分区容忍性:系统中任 ...

  5. springBoot+dubbo整合Redis - 脚手架系列(三)

    1.介绍 Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库. Redis 可以存储键和五种不同 ...

  6. Dubbo、Nacos服务框架的介绍

    TCP/IP五层协议: 应用层:HTTP.FTP等 传输层: TCP:向应用程序提供面向连接的服务,提供流量控制和拥塞控制 UDP:无连接服务,不提供流量控制和拥塞控制 网络层 数据链路层 物理层 R ...

  7. Nacos(九)之Dubbo 融合 Nacos 成为注册中心

    转载自  Dubbo 融合 Nacos 成为注册中心 Nacos 作为 Dubbo 生态系统中重要的注册中心实现,本文将会介绍如何进行 Dubbo 对接 Nacos 注册中心的工作. 预备工作 请确保 ...

  8. java注册中心nacos_spring-cloud整合nacos做注册中心

    前面讲了spring-cloud整合nacos做配置中心,这节讲一下nacos做注册中心 至于注册中心是什么,我就不讲了,不了解的可以去问度娘 下面我就直接开始了,也是比较简单的: 1.引入依赖 1. ...

  9. 【gateway系列】手把手教你gateway整合nacos注册中心

    目录 准备 Gateway服务 Member服务 运行 往期相关推荐: 网关路由规则和nacos配置中心实战: 一步步带你学习gateway路由规则实践 nacos整合配置中心 准备 准备引入相关依赖 ...

  10. Dubbo3.0 整合 Nacos

    首先呢,这个项目分为provider提供者和consumer消费者,使用的版本是dubbo3.0.7,nacos是2.0.4.(注意:要使用dubbo3,nacos的版本必须在2.0.0以上) Pro ...

最新文章

  1. 【Java】数据结构---二叉树 详解
  2. 线性表 ----链表的C语言实现
  3. 全球19家值得关注的物联网安全初创企业
  4. Linux云服务器安装nginx
  5. VS2010 自动化整理代码(1)--- VS正则表达替换 PK Vim
  6. 冈萨雷斯《数字图像处理》读书笔记(十一)——表示和描述
  7. 世界上最难的视觉图_世界上最长的蛇有多长?四川惊现55米洪荒巨蟒(图)
  8. linux 文件大小总和,linux磁盘占用跟每个文件夹大小总和不符?
  9. oracle下定时删除归档脚本
  10. oracle 11g sga max,oracle 10g 11g中的SGA_MAX_SIZE与SGA_TARGET参数
  11. C#中的System.Speech命名空间初探
  12. html有序列表和无序列表
  13. HDFS体系结构详解
  14. phpstudy设置允许远程访问mysql数据库
  15. 二维码的纠错码原理及如何纠错(1)
  16. 阿铭Linux_网站维护学习笔记20190305
  17. 密歇根州立大学计算机专业排名,密歇根州立大学优势专业及优势专业排名(QS世界排名)...
  18. python复合赋值语句语法_复合结构的赋值语句理解
  19. 什么是端口映射?如何设置端口映射?
  20. bat脚本--android adb一键截图

热门文章

  1. 【电脑配置图】i3-10100f+1650显卡(2020.11.28)了解
  2. 科学网—世界上最神奇的30个经典定律——读书笔记 - 贾琳的博文 http://blog.sciencenet.cn/blog-455749-859616.html
  3. 来看看小夏的链表讲解吧---从单链表到输入输出,查找元素,删除结点。---谨以此文祝朋友们生日快乐与官宣发糖。
  4. jzoj1794 保镖排队 (树形dp)
  5. 记录极致cms百度编辑器修改上传图片大小限制
  6. gantt图 classDiagram图应用举例 南北朝更迭图 南北朝帝王关系类图
  7. 解决Gmail不能正常登录的问题,并推荐几个小窍门 [转]
  8. 共模信号和差模信号的区别和抑制
  9. CSS篇十六——盒子模型之边框
  10. 项目技术管理经验总结