配置中心(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都能使用。
- 配置中心有的優先使用配置中心的值。
本文內容學習自谷粒商城--微服務分布式電商項目-分布式基礎。