在使用spring cloud config做分布式配置中心时,使用客户端读取配置中心配置报了这样一段错:
c.c.c.ConfigServicePropertySourceLocator : Fetching config from server at: http://localhost:8888

通过启动日志可以发现:服务还是去 默认端口8888取配置中心的文件;这是怎么回事呢。其实就是一个配置文件优先级的问题;SpringCloud里面有个“启动上下文”,主要是用于加载远端的配置,也就是加载ConfigServer里面的配置,默认加载顺序为:加载bootstrap.*里面的配置 --> 链接configserver,加载远程配置 --> 加载application.*里面的配置; 总结:这里需要借助于“启动上下文”来处理加载远程配置;
所以只要将配置文件改为bootstrap.properties或bootstrap.yml文件即可。

本文探讨了在使用Spring Cloud Config作为分布式配置中心时遇到的配置加载问题。具体表现为客户端试图从默认端口8888获取配置,而实际配置位于其他位置。文章解析了配置加载的优先级及启动上下文的作用,并给出了将配置文件更改为bootstrap.*格式的解决方案。
416





