应用部署策略

Posted shuiyonglewodezzzzz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了应用部署策略相关的知识,希望对你有一定的参考价值。

1.重建部署

    重建部署指的是下线低版本,然后部署高版本,预期的服务宕机时间取决于应用的下线时间和应用的启动时间。采用这种部署方式

    需要提前和客户提交上线申请,并把影响范围,影响时间全部通知到该业务的上下游和其他相关业务系统。

2.滚动更新部署

    高版本逐步替换低版本,这种部署方式的发布和回滚都很耗时,并且无法把控流量(DCOS里面的马拉松就是这种形式).

3.影子部署

    低版本在接收真实生产环境请求的同时分流出部分请求到高版本服务上,搞版本不需要返回应答,对生产环境的流量无影响。这种方式可以对生产环境的流量进行性能测试。         直到高版本应用的稳定性和性能满足要求,再正式上线。

4.蓝绿部署

    蓝绿部署是通过调整负载均衡器指向经过测试的新版本应用服务,以实现尽可能不中断业务服务的系统更新过程。为了完成蓝绿部署,通常需要准备俩个相同的环境,蓝色               环境运行当前生产环境下的应用,也就是老版本服务,在绿色环境下部署新版本,测试验证新版本应用的可用性,在验证通过后调整负载均衡器的策略,将业务流量从老版               本切换到新版本。

              优点:

    1. 对系统可用性影响小,可实现比较平滑的应用发布。
    2. 可实现故障快速切换,提高系统的可靠性。
    3. 新老版本不并行,兼容性好。

    缺点:

    1. 需要一个短暂的迁移过程,无法实现服务不中断。
    2. 没有充分对新版本进行有效的生产流量测试验证。

5.金丝雀部署

    在原有版本可用的情况下,同时部署一个新版应用作为金丝雀,测试新版本的功能和性能。流程如下

    1. 在蓝色环境下运行当前生产环境应用,在绿色环境下运行新版。
    2. 新版在内部验证通过后,修改负载均衡,将部分用户的流量转发到绿色环境。
    3. 在经过并行时间验证确认后,讲所有用户的流量转发到新版。

以上是关于应用部署策略的主要内容,如果未能解决你的问题,请参考以下文章

微服务实战:选择微服务部署策略

部署的策略对比

PlayFramework 应用程序的最佳部署策略?

尝试在没有太多运气的情况下部署实体框架代码优先应用程序?最佳部署策略?

单页应用部署时缓存策略

NextJS 的部署策略建议