nacos config--重点笔记

一 Nacos config 和 spring cloud的对比

1,springcloud config大部分场景结合git 使用, 动态变更还需要依赖Spring Cloud Bus 消息总线来通过所有的客户端变
化;
2,springcloud config不提供可视化界面 3,nacos config使用长轮询更新配置, 一旦配置有变动后,通知Provider的过程非常的迅速, 从速度上秒杀springcloud 原来的config几条街,

 

二 nacos config

最佳实践:
Namespace:代表不同环境,如开发、测试、生产环境。
Group:代表某项目,如XX医疗项目、XX电商项目
DataId:每个项目下往往有若干个工程(微服务),每个配置集(DataId)是一个工程(微服务)的主配置文件

image

 

 三 Config相关配置

Nacos 数据模型 Key 由三元组唯一确定, Namespace默认是空串,公共命名空间(public),分组默认是DEFAULT_GROUP

image

 

支持profile粒度的配置 
spring-­cloud­-starter­-alibaba­-nacos­-config 在加载配置的时候,不仅仅加载了以 dataid 为${spring.application.name}.${file-extension:properties} 为前缀的基础配置,还加载了dataid为
${spring.application.name}-${profile}.${file-extension:properties} 的基础配置。在日常开发中如果遇到多套环境下的不
同配置,可以通过Spring 提供的 ${spring.profiles.active} 这个配置项来配置。
spring.profiles.active=dev
profile 的配置文件 大于 默认配置的文件。 并且形成互补 
ps:只有默认的配置文件, 才会应用profile 

 

配置的优先级
Spring Cloud Alibaba Nacos Config 目前提供了三种配置能力从 Nacos 拉取相关的配置。
A: 通过 spring.cloud.nacos.config.shared-configs 支持多个共享 Data Id 的配置
B: 通过 spring.cloud.nacos.config.ext-config[n].data-id 的方式支持多个扩展 Data Id 的配置
C: 通过内部相关规则(应用名、应用名+ Profile )自动生成相关的 Data Id 配置
当三种方式共同使用时,他们的一个优先级关系是:A < B < C 
优先级从高到低:
1) nacos­config­product.yaml 精准配置
2) nacos­config.yaml 同工程不同环境的通用配置
3) ext­config: 不同工程 扩展配置
4) shared­dataids 不同工程 shared通用配置

精准配置 > 通用配置 > 扩展配置 > shared通用配置

 

@RefreshScope + @VALUE 动态刷新
 
 
 
 
 
posted @ 2026-04-17 08:53  OMGq  阅读(23)  评论(0)    收藏  举报