Spring Cloud Config环境库
Posted myfeiblogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Cloud Config环境库相关的知识,希望对你有一定的参考价值。
您要在哪里存储配置服务器的配置数据?管理此行为的策略是EnvironmentRepository
,服务于Environment
对象。此Environment
是Spring Environment
(包括propertySources
作为主要功能)的域的浅层副本。Environment
资源由三个变量参数化:
-
{application}
映射到客户端的“spring.application.name”; -
{profile}
映射到客户端上的“spring.profiles.active”(逗号分隔列表); 和 -
{label}
这是一个服务器端功能,标记“版本”的配置文件集。
存储库实现通常表现得像一个Spring Boot应用程序从“spring.config.name”等于{application}
参数加载配置文件,“spring.profiles.active”等于{profiles}
参数。配置文件的优先级规则也与常规启动应用程序相同:活动配置文件优先于默认配置,如果有多个配置文件,则最后一个获胜(例如向Map
添加条目)。
示例:客户端应用程序具有此引导配置:
spring:
application:
name: foo
profiles:
active: dev,mysql
(通常使用Spring Boot应用程序,这些属性也可以设置为环境变量或命令行参数)。
如果存储库是基于文件的,则服务器将从application.yml
创建Environment
(在所有客户端之间共享),foo.yml
(以foo.yml
优先))。如果YAML文件中有文件指向Spring配置文件,那么应用的优先级更高(按照列出的配置文件的顺序),并且如果存在特定于配置文件的YAML(或属性)文件,那么这些文件也应用于优先级高于默认值。较高优先级转换为Environment
之前列出的PropertySource
。(这些规则与独立的Spring Boot应用程序相同。)
以上是关于Spring Cloud Config环境库的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Spring Cloud Config 与 Git 和 Vault 复合环境存储库一起使用?
干货分享微服务spring-cloud(7.配置中心spring-cloud-config)
Spring Cloud Config + Spring Cloud Bus + RabbitMQ - 不使用本地 Git 存储库自动刷新客户端