使用Nacos作为配置中心的命名空间、配置分组

 更新时间:2024年12月27日 10:16:44   作者:kobe_IT  
文章详细介绍了Spring Cloud Config配置中心的命名空间、配置集、配置集ID、配置分组以及如何在微服务中加载和使用这些配置,通过配置中心,可以实现配置隔离和集中管理,简化微服务的配置维护

1.命名空间

用来做配置隔离

①默认:public(保留空间):默认新增的所有配置都在public空间,例如开发、测试、生产都有不同的环境:dev(开发环境),test(测试环境),prod(生产环境),利用命名空间做环境隔离,

注意:在bootstrap.properties文件中,配置需要使用哪个命名空间下的配置

可以创建不同的命名空间

例如:

在开发环境中新添加了配置与默认空间(Public)的配置相同,第一张图是dev命名空间,第二张图是public命名空间

如果使用dev命名空间下的配置,则需要在resource目录下的bootstrap.properties文件中进行命名空间的配置,配置namespace时不能写名字,需要复制得到的一长串信息。

spring.cloud.nacos.config.namespace=xxxxxxxxxxxxxxxxxxxxxxxxxxxx

再次启动该服务就会运行dev命名空间下的相关配置获取的信息

②每一个微服务之间互相隔离配置,每一个微服务都创建自己的命名空间,只加载自己命名空间下的配置

2.配置集

所有配置的集合

3.配置集ID

类似于文件名

4.Data Id

类似于文件名

5.配置分组

默认所有的配置集都属于:DEFAULT_GROUP

想要使用哪个命名空间下的哪个配置分组,就需要在bootstrap.properties文件中进行相应的配置

spring.cloud.nacos.config.namespace=xxxxxxxxxxxxxxxxxxxxxxxxxxxx
spring.cloud.nacos.config.group=prod

启动项目后,就会获得相应的信息

6.同时加载多个配置集

例如:

可以将application.yml中对于datasource、mybatis-Plus以及一些其他的配置都可以配置到配置中心中

在nacos中添加完成后,需要在bootstrap.properties文件中进行对应的配置,需在bootstrap.properties说明加载配置中心中哪些配置文件即可

spring.cloud.nacos.config.namespace=xxxxxxxxxxxxxxxxxxxxxxxxx
spring.cloud.nacos.config.group=prod
 
spring.cloud.nacos.config.ext-config[0].data-id=datasource.yml
spring.cloud.nacos.config.ext-config[0].group=dev
spring.cloud.nacos.config.ext-config[0].refresh=true
 
spring.cloud.nacos.config.ext-config[1].data-id=mybatis.yml
spring.cloud.nacos.config.ext-config[1].group=dev
spring.cloud.nacos.config.ext-config[1].refresh=true
 
spring.cloud.nacos.config.ext-config[2].data-id=other.yml
spring.cloud.nacos.config.ext-config[2].group=dev
spring.cloud.nacos.config.ext-config[2].refresh=true

微服务在启动时也可以看到相应的配置信息, @Value,@ConfigurationProperties等以前SpringBoot任何方法从配置文件中获取值,都可以使用。

配置中心有的优先使用配置中心的

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 基于servlet的执行原理与生命周期(全面解析)

    基于servlet的执行原理与生命周期(全面解析)

    下面小编就为大家分享一篇servlet的执行原理与生命周期全面解析,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • Spring MVC 文件上传的示例代码

    Spring MVC 文件上传的示例代码

    本篇文章主要介绍了Spring MVC 文件上传的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • java实现二叉树的创建及5种遍历方法(总结)

    java实现二叉树的创建及5种遍历方法(总结)

    下面小编就为大家带来一篇java实现二叉树的创建及5种遍历方法(总结)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • SpringBoot整合Xxl-Job的完整步骤记录

    SpringBoot整合Xxl-Job的完整步骤记录

    这篇文章主要给大家介绍了关于SpringBoot整合Xxl-Job的完整步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Java中的多态用法实例分析

    Java中的多态用法实例分析

    这篇文章主要介绍了Java中的多态用法,较为详细的分析了java中多态的概念与相关的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • 详解@ConditionalOnMissingBean注解的作用

    详解@ConditionalOnMissingBean注解的作用

    这篇文章主要介绍了详解@ConditionalOnMissingBean注解的作用,@ConditionalOnMissingBean,它是修饰bean的一个注解,主要实现的是,当你的bean被注册之后,如果而注册相同类型的bean,就不会成功,它会保证你的bean只有一个,需要的朋友可以参考下
    2023-10-10
  • Java MyBatis 多表查询详解

    Java MyBatis 多表查询详解

    这篇文章主要给大家介绍了关于MyBatis如何实现多表查询(多对一、一对多)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习
    2021-09-09
  • Redis结合AOP与自定义注解实现分布式缓存流程详解

    Redis结合AOP与自定义注解实现分布式缓存流程详解

    项目中如果查询数据是直接到MySQL数据库中查询的话,会查磁盘走IO,效率会比较低,所以现在一般项目中都会使用缓存,目的就是提高查询数据的速度,将数据存入缓存中,也就是内存中,这样查询效率大大提高
    2022-11-11
  • Java中的length和length()深入分析

    Java中的length和length()深入分析

    java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性。java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法。这篇文章将介绍几个关于Java数组的关键概念。
    2016-11-11
  • 使用Java实现签字功能的示例代码

    使用Java实现签字功能的示例代码

    这篇文章主要为大家详细介绍了如何使用Java实现签字功能,同时支持将签字图像保存为PNG格式和将签字添加到PDF文档中,感兴趣的可以了解下
    2024-02-02

最新评论