首页 > 解决方案 > 重新启动应用程序不会从 git 获取更新的属性

问题描述

我最近将我们的应用程序升级到 Spring Boot 2.3.3 和 Spring Cloud 3.1.5 并且还将我们的配置服务器从 Config Server 更新为 Spring Cloud Config Server。

该应用程序运行良好,但如果有任何更新,我在从 git repo 获取属性时遇到问题。

在我更新我们的 Spring 版本和配置服务器之前,每当我在 git 中更改属性文件中的属性值并重新启动应用程序时,应用程序都会获取最新更新的属性。

但是现在随着升级,当我更新属性并重新启动网络应用程序时,它仍然没有获取更新的属性。现在找到了一种解决方法,我需要在 Spring Cloud Config Server 中同步镜像刷新,然后重新启动应用程序,并且应用程序会获取更新的属性值。

但是想知道是否有解决方案而不是解决方法,以便它像以前一样工作。我尝试了很多方法,但没有任何效果。我已经在我的应用程序中设置了执行器依赖项以及设置为刷新的属性值。但他们没有工作。请让我知道如何处理此问题。

标签: spring-cloudconfigserver

解决方案


我认为您的问题是您没有在 JSON 文件中为 Spring 云配置使用period:true 。添加后,它将每 5 分钟自动刷新一次配置属性,如此处的 spring 云配置服务器文档中所述 - https://docs.pivotal.io/spring-cloud-services/3-1/common/config-服务器/刷新-properties.html

“可以在配置Config Server服务实例时使用periodic参数,使镜像服务周期性地自动刷新一个Git仓库镜像”

在此处阅读有关定期的更多信息 - https://docs.pivotal.io/spring-cloud-services/3-1/common/config-server/configuring-with-git.html


推荐阅读