当前位置:网站首页 > 去中心化金融(DeFi) > 正文

Nacos配置中心使用(nacos 配置中心使用)



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

官方文档: https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config

前面已经搭建好 Nacos Server服务了,下面使用 Nacos 做配置中心。

在app-user服务中使用Nacos做配置中心。

 
  

bootstrap配置文件,一般添加 nacos配置中心的相关信息。项目的信息还是放到 application配置文件中。

必须使用 bootstrap.properties或者 bootstrap.yaml配置文件来配置 Nacos Server 地址。

 
  

在 Nacos Spring Cloud 中,DataId 的完整格式如下:

 
  
  • prefix: 默认为 ,也可以通过配置项 spring.cloud.nacos.config.prefix来配置。
  • spring.profiles.active: 即为当前环境对应的 profile, 注意:当 为空时,对应的连接符 - 也将不存在, dataId 的拼接格式变成 {file-extension}
  • file-exetension: 为配置内容的数据格式,可以通过配置项 spring.cloud.nacos.config.file-extension 来配置。

此时,application.yaml文件内容如下:

 
  

在 Nacos Server管理界面中,新建 DataId为 app-user 的配置列表。

在这里插入图片描述

这里在启动类中,获取配置信息。

 
  

启动服务,发现获取的是 app-user.properties,我们把 app-user.properties删除,立刻获取到了 app-user配置信息。

配置文件的优先级为:app-user.properties > app-user。两者都是 Properties格式。

在这里插入图片描述
然后,我们再把 app-user改为 yaml格式。发现获取不到 Nacos的配置信息了。

在 bootstrap配置文件中,需要我们显示的声明 dataid 文件扩展名为 yaml。

重启服务,发现获取又到了 app-user(yaml格式)配置信息。

在这里插入图片描述

  • 1)nacos会自动根据服务名拉取 DataId对应的配置文件。
    • 如果DataId与服务名相同,则这个配置文件称为默认配置文件,默认DataId可以不写后缀,其他DataId必须写上后缀。
    • 如果DataId跟服务名不一致 就需要手动创建DataId。
  • 2)Nacos客户端默认是Properties的文件扩展名 ,如果修改成为非Properties格式,则必须通过 spring.cloud.nacos.config.file-extension=yaml进行设置。
  • 3)一般我们约定使用一种格式,指定好file-extension=yaml。DataId的话可以不写或写上后缀(推荐)。
  • 4)DataId命名一般是服务名,通常使用.来拼接。

上面针对 spring.cloud.nacos.config.xxx配置,简单使用了 namespace和 file-extension。其他配置下面也使用一下。

启动app-user服务,使用 Spring原生的 @Value(“key”)注解就可以获取取 naocs配置中心的信息。

  • @Value注解:可以获取到配置中心的值,但是无法动态感知修改后的值。
  • :Nacos的注解,可以实现。
 
  

访问,然后修改动态获取值,ok。

在这里插入图片描述

spring-cloud-starter-alibaba-nacos-config 在加载配置的时候,
不仅仅加载了以 dataid为 {file-extension:properties} 为前缀的基础配置,
还加载了dataid为 {profile}.${file-extension:properties} 的基础配置。

在日常开发中,如果遇到多套环境下的不同配置,可以通过 Spring 提供的 ${spring.profiles.active} 这个配置项来配置。

1)application.yaml配置文件如下:

 
  

2)nacos管理界面,创建DataId为的配置

在这里插入图片描述
3)重启app-user服务。发现获取了 app-user-dev.yaml的配置信息

在这里插入图片描述

Namespace 用于进行租户粒度的配置隔离。不同的命名空间下,可以存在相同的 Group 或 Data ID 的配置。

在没有明确指定配置的情况下, 默认使用的是Nacos 上 Public 这个namespace。

如果需要使用自定义的命名空间,可以通过以下配置来实现:

spring.cloud.nacos.config.namespace=b4d0832b-a7b0-44c2-8ce5-1abe676a4736

Group是组织配置的维度之一。通过一个有意义的字符串(如 Buy 或 Trade )对配置集进行分组,从而区分 Data ID 相同的配置集。当您在 Nacos 上创建一个配置时,如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP 。

在没有明确指定配置的情况下,默认是DEFAULT_GROUP 。如果需要自定义自己的 Group,可以通过以下配置来实现:

spring.cloud.nacos.config.group=DEVELOP_GROUP

Data ID 通常用于组织划分系统的配置集。一个系统或者应用可以包含多个配置集,每个配置集都可以被一个有意义的名称标识。

Data ID 通常采用类 Java 包(如com.taobao.tc.refund.log.level)的命名规则保证全局唯一性。此命名规则非强制。

通过自定义扩展的 Data Id 配置,既可以解决多个应用间配置共享的问题,又可以支持一个应用有多个配置文件。

自定义 Data Id 的配置有两种方式:

  • spring.cloud.nacos.config.sharedConfigs:支持共享的 DataId。比如:不同工程的通用配置。
  • spring.cloud.nacos.config.extensionConfigs:支持扩展的 DataId。比如:一个应用多个 DataId 的配置
 
  

重启 app-user服务。创建 DataId为 app.service.common01.yaml配置。发现服务注册成功。

在这里插入图片描述

优先级从高到低:

  • {profile}.${file-extension:properties}
  • {file-extension:properties}
  • ${spring.application.name}
  • extensionConfigs:一个微服务的多个配置,比如:nacos,mybatis
  • sharedConfigs:多个微服务公共配置,比如:redis

profile > 带后缀配置文件 > 默认配置文件 > extension-configs(下标越大优先级就越大) >shared-configs(下标越大优先级就越大)

– 求知若饥,虚心若愚。

到此这篇Nacos配置中心使用(nacos 配置中心使用)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 城厢区公共资源配置中心(城厢区公共资源配置中心官网)2025-09-18 16:18:04
  • 静脉配置中心的工作内容(静脉配置中心干什么)2025-09-18 16:18:04
  • nacos配置中心(nacos配置中心原理)2025-09-18 16:18:04
  • 静脉配置中心的洁净级别(静脉配置中心洁净度要求)2025-09-18 16:18:04
  • 静脉配置中心(pivas静脉配置中心)2025-09-18 16:18:04
  • 配置中心的主要作用(配置中心的主要作用是什么)2025-09-18 16:18:04
  • pivas静脉配置中心工作流程(静脉配置中心工作流程及注意事项)2025-09-18 16:18:04
  • 肃州区人力资源配置中心(肃州区人力资源配置中心代理部)2025-09-18 16:18:04
  • 肃州区人力资源配置中心电话(肃州区人力资源配置中心电话地址)2025-09-18 16:18:04
  • nacos配置中心动态刷新(nacos配置动态刷新注解)2025-09-18 16:18:04
  • 全屏图片