【发布时间】:2016-10-06 21:08:45
【问题描述】:
我可能在这里遗漏了一些东西,但是什么是属性版本控制的好解决方案?
例如,在属性值发生变化的蓝绿部署场景中(旧应用版本消耗旧值,新版本需要新值),如何确保应用的两个版本能够成功共存(考虑可能的重启和回滚)?
一种选择是为需要应用新值的属性创建新的属性名称。当然,这不是一个好的选择,因为我们需要在代码库中跟踪该属性的所有用法并相应地更新其引用。从概念上看也不好。
另一种选择是每个版本都有一个分支。虽然这在这种情况下可以很好地工作,但我设想了一个分支/标签地狱,因为我们将配置存储库扩展到多个应用程序,并且它们各自的分支演变为不同的方向。
分支地狱的解决方案是为每个应用程序单独配置一个配置仓库。但是,我相信这在某种意义上违背了配置服务器的目的,因为它增加了开销。
还有其他方法吗?
【问题讨论】:
标签: spring-boot versioning spring-cloud spring-cloud-config