【发布时间】:2016-02-18 08:34:41
【问题描述】:
我在这个问题上遇到了真正的困难。我们想使用 Spring Cloud Consul 进行服务发现,我的大学正在推动使用 Spring Cloud Consul Config 而不是 Spring Cloud Config 的想法,我之前已经为一个相关项目实现了这一点。问题是,Spring Cloud Config 运行良好,并且具有无缝的开箱即用版本控制管道 (git),用于动态集中管理属性。为了在 Spring Cloud Consul Config 中支持相同的功能,似乎需要重新发明已经融入 Spring Cloud Config 的轮子。
有人有使用这两种方法的经验吗?两者一起使用有意义吗?也就是说,让 Spring Cloud Config Client 指向 Spring Cloud Config Server 以获得更多“静态”环境属性(在 dev、qa、stage、production 之间变化的东西,否则都是静态的)和 Spring Cloud Consul Config 用于纯动态属性,如服务发现?
如果我错了,请有人纠正我,但根据我的理解,为了使用 Spring Cloud Consul Config 支持“静态”属性的动态版本控制,我需要做些什么,我需要在说 git 和每个 Spring Cloud Consul Config 应用程序实例的运行实例的物理“/config”目录:/
【问题讨论】:
-
我有,但这是添加外部管道的示例。但是,Spencer,如果您推荐它,那么我很感兴趣,并且会更认真地研究它。
-
我仔细研究了 git2consul。虽然这是一个轮询器配置,但与 spring 云配置服务器不同,它只在客户端发出请求时尝试从 git 中提取新更改,但这并不是什么大问题......也就是说,我目前遇到的问题是我想分发向 Consul 提交一组提交给 git 的属性文件;但是,如果我这样做,SCCC 不会像我假设的那样扩展到单个属性。我猜 SCCC 的想法是每个键/值映射到一个属性,这意味着我必须将 .properties 文件转换为单个键/值?
-
Spencer,我看到您在 3 月份添加了对将属性 files 存储为键的支持,此外还添加了与 git2Consul 的集成支持......太棒了!
标签: spring spring-cloud