零、系列
歡迎來嫖從零開始SpringCloud Alibaba電商系列:
-
從零開始SpringCloud Alibaba電商系統(四)——Sentinel的fallback和blockHandler
-
從零開始SpringCloud Alibaba電商系統(五)——Feign Demo,Sentinel+Feign實現多節點間熔斷/服務降級
-
從零開始SpringCloud Alibaba電商系統(六)——Sentinel規則持久化到Nacos配置中心## 一、Nacos配置中心
上文我們介紹了Nacos作爲註冊中心的簡單實用:從零搭建SpringCloud Alibaba電商系統(一)——Alibaba與Nacos服務註冊與發現,本文我們來聊一聊Nacos的另外一個功能:分佈式系統的配置中心。什麼是配置中心?分佈式/微服務的架構,每個業務模塊必然是多節點多主機的,那麼他們之間配置文件的統一管理就顯得十分有必要。配置中心即這樣一個多節點系統的唯一配置中心,大家需要的配置文件都存放在我這裏。
並且每個人還可以存放多個版本的配置文件,按需獲取,比如A節點可以有開發環境的配置文件、UAT環境配置文件、生產環境配置文件等多個版本。
二、項目中配置
- 在業務項目中(或我們之前demo mall項目中 )增加pom.xml文件的依賴。
<!-- 使用Nacos Config -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
- 刪除原有 application.yml或application.properties。
application.properties的配置我們將挪動到配置中心,稍後配置。 - 新建並配置bootstrap.properties文件。
bootstrap.properties文件會先於application.properties。在這裏配置的是獲取nacos配置的相關信息。
# nacos地址
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
# 配置中心對應的配置文件所屬的組,稍後在Nacos中創建文件時對應。
spring.cloud.nacos.config.group=mall:order
spring.application.name=order
# 配置中心存放的對應文件命名規則爲: spring.application.name-spring.profiles.active
spring.profiles.active=dev
# spring.profiles.active=prod
- 在Nacos控制檯配置對應的配置文件(Nacos也支持用代碼推送配置文件到配置中心,方便運維)。
*注意,項目中配置的name/active/id需要和這裏的dataid、group對應起來。 * - 運行項目,可以看到項目按照到配置中心配置的8081端口運行。並且在註冊中心可以看到該項目節點。
三、demo 地址
https://github.com/flyChineseBoy/lel-mall/blob/master/README.md