0

作为一个组织单位,我们为所有带有 Git 后端的 Spring 微服务设置了 Spring Cloud Config Server(使用 bitbucket.org)。我们还使/actuator/refresh端点能够即时刷新我们@ConfigurationProperties,而无需重新部署任何微服务。决定不使用 Spring Cloud Bus 以确保我们可以完全控制何时刷新哪个应用程序,以防万一。

现在是我们的问题。我们有一些将查询作为配置的微服务。这些可能非常麻烦,我们希望将此类查询放在一个文件中,并让 Spring Cloud Config Server 引用它们。有没有人设法提出这样的解决方案或类似的解决方案?即使被引用,我们仍然必须能够即时刷新此类配置。因此,这些不能与应用程序本身打包在一起。

4

1 回答 1

1

这很有趣,我们的设置几乎和你一样......虽然看起来很好,但要非常小心......@RefreshScope在每个 bean 上使用最初肯定会有用,但是,如果你想到使用您的应用程序的用户,他们可能会受到刷新的影响,因为您的 bean 将不存在,他们重新创建的时间。他们有时可能会遇到大约 500 次内部或类似情况。

无论如何,试试这个:https://cloud.spring.io/spring-cloud-config/multi/multi__spring_cloud_config_server.html#_file_system_backend 这就是我们在我的团队中使用的。它是您的文件系统的连接器......但我不知道将本机搜索和 git 存储库结合起来的行为......甚至不知道是否可能。你可能有一个,但也许不是两个。试试看。

于 2020-04-05T16:31:15.917 回答