Maven 依赖html
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Greenwich.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> ..... <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-consul-config</artifactId> </dependency> </dependencies>
一、部署 Consulgit
二、在 resources 路径下添加配置文件 bootstrap.properties,示例以下:github
# consul 基本配置 spring.cloud.consul.host=127.0.0.1 spring.cloud.consul.port=8500 # 启用 consul 配置中心 spring.cloud.consul.config.enabled=true # 基础文件夹,默认值 config spring.cloud.consul.config.prefix=config # 应用文件夹,默认值 application,consul 会加载 config/<applicationName> 和 config/<defaultContext> 两份配置,设置为相同值,则只加载一份 spring.cloud.consul.config.default-context=testApp spring.application.name=testApp # 环境分隔符,默认值 "," spring.cloud.consul.config.profile-separator=- # 配置转码方式,默认 key-value,其余可选:yaml/files/properties spring.cloud.consul.config.format=properties # 配置 key 值,value 对应整个配置文件 spring.cloud.consul.config.data-key=data # 启用配置自动刷新 spring.cloud.consul.config.watch.enabled=true # 【疑问】请求 consul api 的延迟,单位:秒 spring.cloud.consul.config.watch.wait-time=1 # 刷新频率,单位:毫秒 spring.cloud.consul.config.watch.delay=10000
三、在 Consul Key/Value 中添加应用配置spring
配置项 spring.cloud.consul.config.prefix
指定了基本文件夹为 config
,须要先建立文件夹 config
:bootstrap
Tips:新建分两种类型:文件夹、Key/Value,建立文件夹只需在后面加上 "/" 便可api
配置项 spring.cloud.consul.config.default-context
和 spring.cloud.consul.config.profile-separator
指定了应用名和环境分隔符,例如应用 testApp
有环境 default
、dev
、prod
,只需在 config
目录下建立 testApp
、testApp-dev
、testApp-prod
三个文件夹便可:app
配置项 spring.cloud.consul.config.format
指定了 Value 的转化方式,依据我的喜爱,能够配置为 yaml
或 properties
,若选择这两种方式,须要配置 spring.cloud.consul.config.data-key
,默认为 data
,示例配置:spring-boot
Tips:如需单独配置每一个 Key/Value,
spring.cloud.consul.config.format
和spring.cloud.consul.config.data-key
均不用设置code
四、配置刷新orm
spring.cloud.consul.config.watch.delay
设置了配置的刷新间隔,在 Consul 修改了配置,会动态同步到应用内部。
本文由博客一文多发平台 OpenWrite 发布!