nacos分布式配置集踩坑记录

本文介绍了Nacos作为分布式配置中心的作用,讲解了如何使用SpringCloudAlibabaNacosConfig集成Nacos,并在Nacos控制台发布配置。重点强调了DataID的命名规则,以及客户端配置的设置,包括bootstrap.yaml的创建和配置加载顺序。还提到了动态刷新配置的实现方式,以及在实际操作中可能遇到的坑,如DataID的正确拼接和命名空间的使用。
摘要由CSDN通过智能技术生成

nacos分布式配置

在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件

什么是nacos

Nacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。使用 Spring Cloud Alibaba Nacos Config,可以在 Nacos Server 集中管理你 Spring Cloud 应用的外部属性配置。

   <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>

使用控制台发布配置

通过浏览器访问 http://127.0.0.1:8848/nacos ,访问 Nacos Server
在这里插入图片描述

在这里插入图片描述

注意:** Data ID 的默认扩展名为 .properties ,希望使用 YAML 配置,此处必须指明是 .yaml

修改客户端配置

创建名为 bootstrap.yaml 的配置文件并删除之前创建的 application.yml 配置文件

在这里插入图片描述

spring.application.name对应Data ID
spring.cloud.nacos.config.server-addr对应Nacos地址
spring.cloud.nacos.config.file-extension对应文件格式

注意:** Spring Boot 配置文件的加载顺序,依次为 bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml ,其中 bootstrap.properties 配置为最高优先级

如需动态刷新效果,必须在需要的类上贴@RefreshScope标签,才能实时刷新配置文件

在这里插入图片描述

再次请求结果

在这里插入图片描述

踩坑记录

1、在这里插入图片描述

DataId:

在Nacos-Server中新建配置,其中Data ID它的定义规则是: p r e f i x − {prefix}- prefix{spring.profiles.active}.${file-extension}

prefix 默认为 spring.application.name 的值,也可以通过配置项 spring.cloud.nacos.config.prefix 来配置。

spring.profiles.active 即为当前环境对应的 profile,可以通过配置项 spring.profiles.active 来配置。

file-exetension 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。目前只支持 properties 和 yaml 类型。

注意:当 spring.profiles.active 为空时,对应的连接符 - 也将不存在,dataId 的拼接格式变成 prefix.{prefix}.prefix.{file-extension}

2、在这里插入图片描述

新建命名空间会自动生成命名空间Id,若配置文件中使用的namespace为指定命名空间Id,则配置列表也要在指定命名空间进行配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值