【发布时间】:2017-02-16 06:01:09
【问题描述】:
目前我正在开发一个基于微服务架构的应用程序。作为主要技术,我们计划在每个微服务开发中使用 Spring Boot 和 Docker。目标之一是为用户提供零停机时间部署功能。
我花了一些时间试图找到一些解决方案并了解Blue Green Deployment (BGD),但有些方面对我来说仍然不清楚。主要问题是数据库状态和版本兼容性。
例如,如果使用
BGD,如何从 成功部署后的绿色到蓝色轮廓?
我在 Spring 的 Zero Downtime Deployment with a Database 文章中发现了有趣的方法,但我认为这种方法具有过于复杂的应用程序版本和发布计划过程以及向后兼容性要求。
所以我想问以下问题:
- 对零停机时间部署流程概念有何建议,并以实际使用经验为后盾?
- 是否有任何开箱即用的解决方案(付费或免费)为具有关系数据库的应用程序提供零停机时间部署功能?
附言
如果是,StackOverflow.com 中的零停机部署是如何工作的?
【问题讨论】:
-
对于那些投票结束这个问题的人,我可以说这不是
too broad或off-topic,因为我要求描述具体的经验,而不是抽象的推理和建议 -
我认为这是题外话,因为您在第二个问题中要求解决方案或框架。最接近的原因提到,要求软件库/工具是题外话,我认为要求框架符合这个密切的原因。
-
@g00glen00b 我删除了
framework,如果它很困惑:) -
要求一个有助于解决这个问题的框架是主题的定义。如果有针对医疗专业人员的 StackOverflow,如果医生询问复杂的程序然后问“有没有解决这个问题的产品?”,你会告诉医生这是题外话吗?
标签: java database docker spring-boot microservices