配置中心(nacos)-控制台使用
一、命名空间
作用:配置隔离
- 默认空间
- public(保留空间):默认新增的所有配置都在public空间。
- 新建默认空间:
- 创建流程
- 命名空间 - 新建命名空间
- 填写 “命名空间名” 与 “描述”, 点击 “确定”
- 生成一条信息,包含命名空间的唯一ID
- 创建流程
1、基于环境隔离
因项目需要可能分不同的部署环境。例如开发,测试,生产。
-
修改bootstrap.properties文件
spring.cloud.nacos.config.namespace=<命名空间的ID>
2、基于微服务相互隔离
每一个微服务都创建自己的命名空间,只加载自己命名空间下的所有配置。
二、配置集
所有的配置的集合。
三、配置集ID
类似文件名。在控制台中,新建配置时的Data ID就是配置集ID。
四、配置分组
默认所有的配置集都属于 DEFAULT_GROUP。组名可随意创建。
-
修改bootstrap.properties文件
spring.cloud.nacos.config.group=<组名>
五、举例
- 每个微服务创建自己的命名空间
- 使用配置分组区分环境。例如dev,test,prod
六、同时加载多个配置集
随着业务不断壮大,微服务可能有非常多的配置,如果我们将所有的配置都放在一个配置文件中,不易维护。
所以我们需要拆分出不同的配置文件。例如可根据数据源、框架、微服务等进行拆分。
-
修改bootstrap.properties文件
spring.cloud.nacos.server-addr=127.0.0.1:8848 spring.application.name=test-demo spring.cloud.nacos.config.namespace=<命名空间的ID> # 如果此处不配置 spring.cloud.nacos.config.group # 则命名空间下 DEFAULT_GROUP(默认分组) 加载默认分组的 # 命名空间下没有默认分组,则加载项目中的 spring.cloud.nacos.config.group=<组名> # 拓展配置 - 数据源 spring.cloud.nacos.config.ext-config[0].data-id=datasource.yml # 配置集ID spring.cloud.nacos.config.ext-config[0].group=dev # 配置分组 spring.cloud.nacos.config.ext-config[0].refresh=true # 动态刷新 # 拓展配置 - mybatis spring.cloud.nacos.config.ext-config[1].data-id=mybatis.yml # 配置集ID 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 # 配置集ID spring.cloud.nacos.config.ext-config[2].group=dev # 配置分组 spring.cloud.nacos.config.ext-config[2].refresh=true # 动态刷新
七、总结
- 微服务任何配置信息,任何配置文件都可以放在配置中心中
- 只需要在bootstrap.properties文件中说明加载配置中心中哪些配置文件即可。
- 以前Spring Boot 中任何方法从配置中获取值的,例如:@Value,@ConfigurationProperties都能使用。
- 配置中心有的优先使用配置中心的值。
本文内容学习自谷粒商城--微服务分布式电商项目-分布式基础。