nacos 作為配置中心使用心得--配置使用

於林富發表於2020-10-31

1、頁面配置

撇開原理不談,先來介紹下nacos的基本使用,如下圖nacos配置是以data id為單位進行使用的,基本上一個服務的一個配置檔案就對應一個data id,支援的格式有xml,yaml,properties。

像一般的小型專案基本上一個專案一個dataId即可。這種已配置檔案為基準的設計理念,比單單用key,value的配置中心是方便好多的,後者直接配置key氾濫。

nacos 作為配置中心使用心得--配置使用

還有一些比較有好的功能例如:配置克重,30天之內的版本檢視,以名稱空間為基準的許可權控制,配置檔案監聽功能,可以支援不同部門人的使用。

2、配置獲取

上面是頁面是頁面配置,接下來給大家介紹如何通過程式碼獲取配置。

2.1 spring boot 工程

使用文件:https://nacos.io/zh-cn/docs/quick-start-spring-boot.html  

按照官網給出的步驟寫程式碼即可,有一點需要注意,如果你建立了一個新的名稱空間

nacos.config.namespace=490e4226-9f11-4664-91d1-46b338062b71

通過上面的方式指定名稱空間即可

具體程式碼地址:

https://github.com/nacos-group/nacos-examples ,對應的工程如下。

nacos 作為配置中心使用心得--配置使用

2.2 spring 工程

使用文件:https://nacos.io/zh-cn/docs/quick-start-spring.html  

用法和spring boot類似,同樣是在屬性上加入NacosValue註解,不同的是,配置nacos檔案配置源不同,得用下面這種方式配置。

@Configuration
@EnableNacosConfig(globalProperties = @NacosProperties(serverAddr = "127.0.0.1:8848"))

/**
* Document: https://nacos.io/zh-cn/docs/quick-start-spring.html
* <p>
* Nacos 控制檯新增配置:
* <p>
* Data ID:example
* <p>
* Group:DEFAULT_GROUP
* <p>
* 配置內容:useLocalCache=true
*/
@NacosPropertySource(dataId = "example", autoRefreshed = true)
public class NacosConfiguration {

}

具體程式碼地址:

https://github.com/nacos-group/nacos-examples ,對應的工程如下。

nacos 作為配置中心使用心得--配置使用

如果你的配置檔案是一個複雜的json物件,也可用上面紅框第三個工程例項進行監聽複雜物件對應的配置檔案的變化,然後賦值。

總結一句話,nacos整體上使用了模板方法的設計思想,將大塊的功能給你實現,你需要要配置註解,或者簡單實現一些特殊邏輯就能達到你的目的。

簡潔優雅。

相關文章