搭建微服務框架(讀取Nacos的配置信息)
本篇文章來記錄下使用Nacos進行遠程配置文件讀取的操作,類似於
SpringCloud-Config
組件的功能
本文源地址:讀取Nacos的配置信息
Github地址:SQuid
介紹
Nacos不僅僅只具備服務注冊發現功能,它同時也具備遠程動態讀取配置文件的功能。
如果你認為這個功能沒什么用,那么就真的大錯特錯了,舉例:
- 一些關鍵性的配置項
拿我當前公司的項目上來舉例,一些服務的調用時間,我們還是寫在項目上的 properties
文件中,像企業級應用,我們設置的服務調用時間在一部分對外的接口上會出現超時的情況,
這個時候,如果可以直接在 Nacos Config
上進行修改,效率也會提升不少。
- 數據庫配置信息
以Mysql的連接池配置來說,如果配置文件全部都寫在項目的 resource
目錄下,萬一代碼泄露或者被某些想要報復社會的人拿到,后果的話,大家都懂的,
絕對的 Welcome to 51Job
。
使用
我們這次直接在上篇文章中搭建的 squid-example-provider
中來實現,一如既往的開始第一步,引入依賴文件:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
在 squid-example-provider
中引入 Nacos Config
依賴后,我們開始來進行下一步的操作。
- Nacos新建配置:
登入Nacos控制台,進入配置管理,配置列表,新增一個配置:
Key | Value |
---|---|
Data ID | 由項目中的 bootstrap.properties 指定。 |
Group | 分組信息,可以自己填寫。 |
標簽 | N/A |
歸屬應用 | 歸屬的應用的信息,可以自己填寫。 |
描述 | 本次配置的描述。 |
配置格式 | 根據自己項目需求來選擇。 |
配置內容 | 對應配置格式的配置文件。 |
- 項目resource下新建
bootstrap.properties
完成Nacos的新建配置后,我們這個時候可以來到項目中新建一個 bootstrap.properties
文件,之前的 application.yaml
文件可以刪除掉了,之所以命名為 bootstrap.properties
,是因為SpringCloud的加載配置順序優先級properties文件大於yaml。
Key | Value |
---|---|
spring.profiles.active | 配置文件的屬性,比如上面Nacos里的Data ID是以-test結尾,這里我們就寫 test。 |
spring.application.name | 應用名稱,寫項目名就好了 |
spring.cloud.nacos.config.file-extension | 加載的配置文件格式。 |
spring.cloud.nacos.config.server-addr | Nacos的地址。 |
spring.profiles.active=test
spring.application.name=squid-example-provider
spring.cloud.nacos.config.file-extension=yaml
spring.cloud.nacos.config.server-addr=yanzhenyidai.com:8848
- 啟動項目
配置完成后,我們可以啟動 Application
類,來檢驗是否可以成功讀取到配置文件信息。
總結
Nacos的Config配置功能真的很方便,而且支持熱加載形式,感興趣的朋友可以更深層次的了解。
參考資料: