Spring Cloud Alibaba Nacos Config 看看顶级高手是如何读取配置的?

本文详述了Spring Cloud Alibaba Nacos配置客户端的加载过程,包括sharedConfigs和extensionConfigs的加载顺序,dataId的计算逻辑,以及如何通过group和namespace隔离配置。此外,还探讨了如何禁用DEFAULT_GROUP以及配置加载时的本地文件优先级策略。重点强调了namespace作为最高级别隔离的重要性。
摘要由CSDN通过智能技术生成

文主要分析 Spring Cloud Alibaba Nacos 配置客户端读取配置的部分过程,逻辑入口是 com.alibaba.cloud.nacos.client.NacosPropertySourceLocator#locate;通过本篇,

  • 1、了解到 sharedConfigs、extensionConfigs 如何加载
  • 2、应用配置加载时,dataId 的计算逻辑
  • 3、如何通过 group 和 namespace 来隔离配置
  • 4、如何禁用默认的 DEFAULT_GROUP

加载顺序和 sharedConfigs、extensionConfigs 加载逻辑
这里的配置主要指的是 sharedConfigs、extensionConfigs 以及用户通过 namespace+group+dataId 指定的应用配置。
加载顺序

// 配置临时存档的地方
CompositePropertySource composite = new CompositePropertySource(
      NACOS_PROPERTY_SOURCE_NAME);
// 1、先加载 sharedConfigs
loadSharedConfiguration(composite);‘
// 2、接着加载 extensionConfigs
loadExtConfiguration(composite);
// 最后加载指定的应用配置
loadApplicationConfiguration(composite, dataIdPrefix, nacosConfigProperties, env);


这里除了需要关注顺序之后,还有一点非常重要,就是对于 sharedConfigs、extensionConfigs 两个指定的配置,他们不依赖用户指定的 group,而是使用默认的 DEFAULT_GROUP,下面来看。


sharedConfigs 加载逻辑


先通过代码大概理解下逻辑

private void loadSharedConfiguration(
      CompositePropertySource compositePropertySource) {
   // 通过配置获取 sharedConfigs 列表
   List&l
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值