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

1、頁面配置

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

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

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

2、配置獲取

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

2.1 spring boot 工程

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

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

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

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

具體程式碼地址:

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

2.2 spring 工程

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

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

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

/**
* Document: //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 {

}

具體程式碼地址:

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

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

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

簡潔優雅。

Tags: