摘要:快速入門這個(gè)快速入門使用的服務(wù)器和客戶端。屬性在端點(diǎn)中顯示為高優(yōu)先級(jí)屬性源,如以下示例所示。名為的屬性源包含值為且具有最高優(yōu)先級(jí)的屬性。屬性源名稱中的是存儲(chǔ)庫,而不是配置服務(wù)器。
Spring Cloud Config快速入門
這個(gè)快速入門使用Spring Cloud Config Server的服務(wù)器和客戶端。
首先,啟動(dòng)服務(wù)器,如下所示:
$ cd spring-cloud-config-server $ ../mvnw spring-boot:run
服務(wù)器是一個(gè)Spring Boot應(yīng)用程序,因此如果你愿意,可以從IDE運(yùn)行它(主類是ConfigServerApplication)。
接下來嘗試一個(gè)客戶端,如下所示:
$ curl localhost:8888/foo/development {"name":"foo","label":"master","propertySources":[ {"name":"https://github.com/scratches/config-repo/foo-development.properties","source":{"bar":"spam"}}, {"name":"https://github.com/scratches/config-repo/foo.properties","source":{"foo":"bar"}} ]}
定位屬性源的默認(rèn)策略是克隆git存儲(chǔ)庫(在spring.cloud.config.server.git.uri)并使用它來初始化一個(gè)微型SpringApplication,微型應(yīng)用程序的Environment用于枚舉屬性源并在JSON端點(diǎn)發(fā)布它們。
HTTP服務(wù)具有以下形式的資源:
/{application}/{profile}[/{label}] /{application}-{profile}.yml /{label}/{application}-{profile}.yml /{application}-{profile}.properties /{label}/{application}-{profile}.properties
其中,application作為SpringApplication中的spring.config.name注入(常規(guī)Spring Boot應(yīng)用程序中的正常application),profile是一個(gè)活動(dòng)的配置文件(或以逗號(hào)分隔的屬性列表),label是一個(gè)可選的git標(biāo)簽(默認(rèn)為master)。
Spring Cloud Config Server從git存儲(chǔ)庫(必須提供)中提取遠(yuǎn)程客戶端的配置,如以下示例所示:
spring: cloud: config: server: git: uri: https://github.com/spring-cloud-samples/config-repo客戶端使用
要在應(yīng)用程序中使用這些功能,你可以將其構(gòu)建為依賴于spring-cloud-config-client的Spring Boot應(yīng)用程序(例如,請參閱config-client或示例應(yīng)用程序的測試用例)。添加依賴項(xiàng)最方便的方法是使用Spring Boot啟動(dòng)器org.springframework.cloud:spring-cloud-starter-config,還有一個(gè)用于Maven用戶的父pom和BOM(spring-cloud-starter-parent)以及一個(gè)用于Gradle和Spring CLI用戶的Spring IO版本管理屬性文件,以下示例顯示了典型的Maven配置:
org.springframework.boot spring-boot-starter-parent {spring-boot-docs-version} org.springframework.cloud spring-cloud-dependencies {spring-cloud-version} pom import org.springframework.cloud spring-cloud-starter-config org.springframework.boot spring-boot-starter-test test org.springframework.boot spring-boot-maven-plugin
現(xiàn)在你可以創(chuàng)建一個(gè)標(biāo)準(zhǔn)的Spring Boot應(yīng)用程序,例如以下HTTP服務(wù)器:
@SpringBootApplication @RestController public class Application { @RequestMapping("/") public String home() { return "Hello World!"; } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
當(dāng)此HTTP服務(wù)器運(yùn)行時(shí),它從端口8888上的默認(rèn)本地配置服務(wù)器(如果它正在運(yùn)行)中獲取外部配置,要修改啟動(dòng)行為,可以使用bootstrap.properties更改配置服務(wù)器的位置(類似于application.properties但適用于應(yīng)用程序上下文的bootstrap階段),如以下示例所示:
spring.cloud.config.uri: http://myconfigserver.com
默認(rèn)情況下,如果未設(shè)置應(yīng)用程序名稱,則將使用application,要修改名稱,可以將以下屬性添加到bootstrap.properties文件中:
spring.application.name: myapp
設(shè)置屬性${spring.application.name}時(shí),不要在應(yīng)用程序名稱前加上保留字application-,以防止解析正確屬性源的問題。
bootstrap屬性在/env端點(diǎn)中顯示為高優(yōu)先級(jí)屬性源,如以下示例所示。
$ curl localhost:8080/env { "profiles":[], "configService:https://github.com/spring-cloud-samples/config-repo/bar.properties":{"foo":"bar"}, "servletContextInitParams":{}, "systemProperties":{...}, ... }
名為configService:
屬性源名稱中的URL是git存儲(chǔ)庫,而不是配置服務(wù)器URL。上一篇:Spring Cloud Commons:通用的抽象 下一篇:Spring Cloud Config Server
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/77585.html
摘要:,這是標(biāo)記配置文件集版本化的服務(wù)器端特性。要配置對(duì)稱密鑰,需要將設(shè)置為秘密字符串或使用環(huán)境變量將其排除在純文本配置文件之外。 Spring Cloud Config Server Spring Cloud Config Server為外部配置提供基于HTTP資源的API(名稱—值對(duì)或等效的YAML內(nèi)容),通過使用@EnableConfigServer注解,服務(wù)器可嵌入Spring Bo...
摘要:開公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來越多時(shí),大家搜索起來就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章系列處理登錄請求前后端分離一使用完美處理權(quán)限問題前后端分離二使用完美處理權(quán)限問題前后端分離三中密碼加鹽與中異常統(tǒng)一處理 開公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來越多時(shí),大家搜索起來就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章! Spring Boo...
摘要:服務(wù)注冊中心一個(gè)服務(wù)注冊中心,所有的服務(wù)都在注冊中心注冊,負(fù)載均衡也是通過在注冊中心注冊的服務(wù)來使用一定策略來實(shí)現(xiàn)。在客戶端實(shí)現(xiàn)了負(fù)載均衡。 文章參考于史上最簡單的 SpringCloud 教程 | 終章 Spring Cloud 是一個(gè)微服務(wù)框架,與 Spring Boot 結(jié)合,開發(fā)簡單。將一個(gè)大工程項(xiàng)目,分成多個(gè)小 web 服務(wù)工程,可以分別獨(dú)立擴(kuò)展,又可以共同合作。 環(huán)境 ...
摘要:通過本教程的前兩篇基礎(chǔ)教程使用實(shí)現(xiàn)服務(wù)注冊與發(fā)現(xiàn)基礎(chǔ)教程支持的幾種服務(wù)消費(fèi)方式我們已經(jīng)學(xué)會(huì)了,如何利用實(shí)現(xiàn)服務(wù)的注冊與發(fā)現(xiàn)。簡介除了實(shí)現(xiàn)了服務(wù)的注冊發(fā)現(xiàn)之外,還將配置中心功能整合在了一起。同時(shí),值必須與上一階段中創(chuàng)建的配置匹配除了或者后綴。 通過本教程的前兩篇: 《Spring Cloud Alibaba基礎(chǔ)教程:使用Nacos實(shí)現(xiàn)服務(wù)注冊與發(fā)現(xiàn)》 《Spring Cloud Ali...
閱讀 3450·2021-11-04 16:10
閱讀 3960·2021-09-29 09:43
閱讀 2774·2021-09-24 10:24
閱讀 3644·2021-09-01 10:46
閱讀 2570·2019-08-30 15:54
閱讀 677·2019-08-30 13:19
閱讀 3299·2019-08-29 17:19
閱讀 1122·2019-08-29 16:40