領先一步
VMware 提供培訓和認證,助您加速進步。
瞭解更多Spring Cloud Config 為分散式系統中的外部化配置提供伺服器端和客戶端支援。透過配置伺服器,您可以集中管理所有環境中應用程式的外部屬性。客戶端和伺服器端的概念與 Spring 的 Environment 和 PropertySource 抽象完全相同,因此它們非常適合 Spring 應用程式,但也可以與任何語言執行的任何應用程式一起使用。當應用程式從開發環境透過測試環境進入生產環境的部署流水線時,您可以管理這些環境之間的配置,並確保應用程式在遷移時擁有執行所需的一切。伺服器儲存後端的預設實現使用 Git,因此它能夠輕鬆支援配置環境的標記版本,並且可以透過各種工具來管理內容。新增替代實現並將其與 Spring 配置進行外掛化非常容易。
Spring Cloud Config Server 特性
@EnableConfigServer 輕鬆嵌入到 Spring Boot 應用程式中Config Client 特性(針對 Spring 應用程式)
Environment只要 Spring Boot Actuator 和 Spring Config Client 在類路徑中,任何 Spring Boot 應用程式都將嘗試聯絡 https://:8888 上的配置伺服器,這是 spring.cloud.config.uri 的預設值。如果您想更改此預設值,可以在 bootstrap.[yml | properties] 中或透過系統屬性或環境變數設定 spring.cloud.config.uri。
@Configuration
@EnableAutoConfiguration
@RestController
public class Application {
@Value("${config.name}")
String name = "World";
@RequestMapping("/")
public String home() {
return "Hello " + name;
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
示例中 config.name 的值(或您以常規 Spring Boot 方式繫結的任何其他值)可以來自本地配置或來自遠端配置伺服器。預設情況下,配置伺服器將具有優先權。要檢視此情況,請檢視應用程式中的 /env 端點,並檢視 configServer 屬性源。
要執行您自己的伺服器,請使用 spring-cloud-config-server 依賴項和 @EnableConfigServer。如果將 spring.config.name=configserver,應用程式將執行在 8888 埠並從示例倉庫提供資料。您需要一個 spring.cloud.config.server.git.uri 來定位您自己需要的配置資料(預設情況下,它是 Git 倉庫的位置,並且可以是本地的 file:.. URL)。