Springcloud(六)分佈式配置Spring Cloud Config

1.簡介

在分佈式系統中,由於服務數量巨多,爲了方便服務配置文件統一管理,實時更新,所以需要分佈式配置中心組件。在 Spring Cloud中,有分佈式配置中心組件 spring cloudconfig,它支持配置服務放在配置服務的內存中(即本地),也支持放在遠程Git倉庫中。

在 spring cloud config組件中,分兩個角色,一是 config server,二是 configclient。Config Server.是一個可橫向擴展、集中式的配置服務器,它用於集中管理應用程序各個環境下的配置,默認使用Git存儲配置文件內容,也可以使用SVN存儲,或者是本地文件存儲。

2.解決的問題

由於分佈式項目服務衆多,配置文件衆多,要是配置文件修改後還要再次跟新部署到線上,Spring Cloud Config將配置文件統一放到git或svn遠端倉庫,只要修改遠端倉庫庫中的配置文件,對應服務就可以讀取到便跟後的配置文件,避免的需要手動跟新服務器上的配置文件,簡化運維負擔。
運行的服務讀取配置文件流程:
在這裏插入圖片描述

3.快速使用

3.1配置服務器端來獲取遠端倉庫的配置文件

本次倉庫地址使用的爲碼雲。

(1)登陸碼雲創建倉庫上傳配置文件

配置文件命名規則:(必須以-連接)
{application}-{profile}.yml或{application}-{profile}.properties
application爲應用名稱,profile爲開發環境(用於區分測試環境、生產環境等)。
- List item

(2)新建讀取配置文件的微服務模塊,添加pom的依賴

<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-config-server</artifactId>
    </dependency>
</dependencies>

(3)編寫配置文件

server:
  port: 9996
spring:
  application:
    name: diplomaproject-config
  cloud:
    config:
      server:
        git:
          uri: https://gitee.com/xbf392/diplomaproject.git
          username: ******
          password: ****** #改成自己的密碼
          basedir: F:\data\diplomaproject-config #從遠端Git緩存下來的配置文件下載地址

(4)編寫啓動類

@SpringBootApplication(exclude= {DataSourceAutoConfiguration.class})
@EnableConfigServer
public class ConfigApplication {
    public static void main(String[] args) {
        SpringApplication.run(ConfigApplication.class);
    }
}

(5)運行項目查看

在這裏插入圖片描述

3.2配置微服務成爲客戶端讀取服務端獲得的配置文件

(1)導入pom依賴

 <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>

(2)新建bootstrap.yml配置文件

bootstrap.yml的優先級比application.yml的優先級要高,application.yml可以刪除了,讓這個服務使用遠端倉庫的配置文件。

spring:
  cloud:
    config:
      name: dipuser
      profile: dev
      label: master
      uri: http://localhost:9996  #爲配置的server服務的地址

這幾個參數的獲取應與遠端倉庫的文件一致。
在這裏插入圖片描述

(3)啓動eureka 、configserver、和測試的微服務

此時已經刪除了application.yml,讀取的配置文件是遠端gitee倉庫中的配置文件。
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章