Springcloud-nacos实现配置和注册中心的方法
最近,阿里开源的nacos比较火,可以和springcloud和dubbo共用,对dubbo升级到springcloud非常的方便。这里学习一下他的配置和注册中心。我主要记录一下它的使用方式和踩得坑。
nacos简单介绍
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
以上是从nacos官网摘抄下来的,总结一下nacos有以下有点几个优点:
(1)它支持配置中心管理(含图形化界面)
(2)部署交付简单
(3)包含注册中心,不用独自搭建配置和注册中心。
(4)完美集成spring cloud和dubbo拓展性好
nacos使用方式,具体参考官方配置
(1)从 Github 上下载源码方式
git clone https://github.com/alibaba/na... cd nacos/ mvn -Prelease-nacos clean install -U ls -al distribution/target/ cd distribution/target/nacos-server-$version/nacos/bin
(2)解压,启动nacos
unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz cd nacos/bin sh startup.sh -m standalone
完成,集群高可用请自行研究,本文不过多赘述。
nacos实现配置中心
springcloud使用nacos作为配置中心特别简单。只需要添加依赖,使用bootstrap配置注册中心地址即可。
(1)添加nacos的配置中心依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency>
(2)配置bootstrap.properties文件
#配置服务的名字 spring.application.name=provider-service #nacos配置中心的地址 spring.cloud.nacos.config.server-addr=nacos.ailijie.top #nacos配置的编码方式 spring.cloud.nacos.config.encode=utf-8 #配置组名子,需要在nacos的配置设置,不然找不到 spring.cloud.nacos.config.group=PROVIDER_GROUP #配置后缀,properties不需要 spring.cloud.nacos.config.file-extension=yml #加载nacos多个配置文件 spring.cloud.nacos.config.shared-dataids=provider-service.properties,test.properties #刷新加载的其他环境 spring.cloud.nacos.config.refreshable-dataids=provider-service.properties,test.properties
(3)简单介绍一下,使用nacos配置中心,客户端会定时心跳拉去配置,环境变量会动态刷新,但是在bean中需要使用 @RefreshCode注解去刷新,不然不生效。数据库配置可以自定义数据源。加载其他配置文件的话,需要使用refres-dataids去刷新环境。
nacos实现注册中心
同样的,nacos实现注册中心也是相当的简单,nacos配置成功后,我们只需要添加依赖,注解,配置注册中心地址即可。
(1)添加依赖
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
(2)在启动类上添加@EnableDiscoveryClient 注解
(3)配置注册中心地址
#配置服务名字 spring.application.name=xxx-service #配置服务集群名字 spring.cloud.nacos.discovery.cluster-name=consumer-service #配置注册中心地址 spring.cloud.nacos.discovery.server-addr=nacos.ailijie.top
完成,就是这样简单。
nacos采坑心得
下面是我遇到的一些问题:
(1)使用版本管理,学习新项目我们首先需要了解版本兼容特性,不然会出现很多问题。
(2)配置不生效,没有使用@RefreshCode注解刷新配置
(3)分清注册中心和配置中心是两个概念,需要配置两个地址
(4)学会看源码,看维基。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- Alibaba SpringCloud集成Nacos、openFeign实现负载均衡的解决方案
- SpringCloud使用Nacos保存和读取变量的配置方法
- SpringBoot项目改为SpringCloud项目使用nacos作为注册中心的方法
- 关于springcloud集成nacos遇到的问题
- SpringCloud2020整合Nacos-Bootstrap配置不生效的解决
- SpringCloud整合Nacos实现流程详解
- SpringCloud-Alibaba-Nacos启动失败解决方案
- Springcloud seata nacos环境搭建过程图解
- springcloud nacos的赋值均衡和动态刷新
相关文章
spring的UnexpectedRollbackException事务嵌套示例解析
这篇文章主要为大家介绍了spring的UnexpectedRollbackException事务嵌套示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-09-09SpringBoot、Java 使用 Jsoup 解析 HTML 页面
这篇文章主要介绍了SpringBoot、Java 使用 Jsoup 解析 HTML 页面的详细步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-08-08Java判断object对象为空(包括null ,““)的方法
这篇文章主要介绍了Java判断对象是否为空(包括null ,“”)的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-12-12Spring Boot 在启动时进行配置文件加解密的方法详解
这篇文章主要介绍了Spring Boot 在启动时进行配置文件加解密的方法,本文通过实例给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-06-06
最新评论