Spring Cloud 配置服务器

Posted

技术标签:

【中文标题】Spring Cloud 配置服务器【英文标题】:Spring Cloud Config Server 【发布时间】:2017-09-07 01:50:15 【问题描述】:

我正在使用 Spring Cloud Config Server 并且能够检测来自 git 存储库的更改并将其传递给 Config 客户端。

有两种方式,我已经实现了:

    在 git 存储库中进行更改(提交和推送)后,我发出 curl 请求 curl -X POST http://server:port/bus/refresh,它工作正常。为此,我使用 RabbitMQ 作为 Spring Cloud Bus。

参考: http://tech.asimio.net/2017/02/02/Refreshable-Configuration-using-Spring-Cloud-Config-Server-Spring-Cloud-Bus-RabbitMQ-and-Git.html

    在 git 存储库中进行更改(提交和推送)后,我发出 curl 请求 curl -X POST http://server:port/refresh(url 中没有 /bus),它工作正常。我没有在这里使用 Spring Cloud Bus。

参考:https://spring.io/guides/gs/centralized-configuration/

所以两者都可以正常工作,那么使用 Spring Cloud Bus 是否有任何优势,或者在生产环境中,不使用 Spring Cloud Bus 会有什么问题吗?因为在生产中将 RabbitMQ 集群 (HA) 设置为 Spring Cloud Bus 需要额外的努力。

谢谢, 大卫

【问题讨论】:

【参考方案1】:

/refresh 只会刷新发出请求的配置客户端。它只在本地刷新。使用/bus/refresh 将刷新所有连接到总线的客户端。换句话说,它将刷新所有总线客户端(如果设置了destination 参数,则刷新一个子集)。

【讨论】:

您好 Spencer,您有一个示例应用程序吗?我正在尝试使用 Spring Cloud Bus 了解 Spring Cloud 配置。从 git hub 存储库中读取属性文件并在其更改时更新。 @Jesse 这个文档spencer.gibb.us/blog/2015/09/24/… 可能会对您有所帮助,这是由斯宾塞自己编写的,其中包含您可能需要的所有信息

以上是关于Spring Cloud 配置服务器的主要内容,如果未能解决你的问题,请参考以下文章

基于Spring Cloud的微服务构建学习-3 Spring Cloud Eureka配置详解

spring cloud互联网分布式微服务云平台规划分析--spring cloud服务统一配置中心

spring cloud互联网分布式微服务云平台规划分析--spring cloud服务统一配置中心

Spring Cloud 之配置中心

创建配置中心服务端(Spring Cloud Config)

为啥 spring-cloud-config 示例测试需要旋转配置服务器?