配置中心(nacos)-控制台使用


配置中心(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都能使用。
  • 配置中心有的優先使用配置中心的值。

本文內容學習自谷粒商城--微服務分布式電商項目-分布式基礎。

課程地址


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM