持续集成,持续交付,持续部署,敏捷开发,DevOps都啥关系?
author:一佰互联 2019-03-29   click:269

简介:持续集成,持续交付,持续部署,敏捷开发,DevOps这些概念都容易混淆,他们之间是什么关系呢?持续集成,持续交付,持续部署,敏捷开发,DevOps的关系敏捷开发Agile是一种开发流程,是一种快速迭代的开发流程,每个 ...

持续集成,持续交付,持续部署,敏捷开发,DevOps这些概念都容易混淆,他们之间是什么关系呢?


持续集成,持续交付,持续部署,敏捷开发,DevOps都啥关系?

持续集成,持续交付,持续部署,敏捷开发,DevOps的关系


敏捷开发Agile是一种开发流程,是一种快速迭代的开发流程,每个开发流程非常短,长到一个月,短到两个星期,就会是一个周期,在这个周期中,每天都要开会同步,每天都要集成。正是因为周期短,才需要持续的做这件事情,如果一个开发周期长达几个月,则不需要持续的集成,最后留几个星期的集成时间一起做也是可以的,但是这样就不能达到互联网公司的快速迭代,也是我们常常看到传统公司的做法。

持续集成往往指对代码的提交,构建,测试的过程,也就是上述的在一起的过程。

持续交付是指将集成好的交付物,例如war,jar,或者容器镜像,部署在联调环境,或者预发环境的过程。

持续部署是指将交付物持续部署在生产环境的过程。

我们常说CICD,CD有时候指的是Delivery交付,有的是指Deployment部署,对于非生产环境,自动部署是没有问题的,对于生产环境,往往还是需要有专人来进行更为严肃的部署过程,不会完全的自动化。

接下来就是DevOps,DevOps不只是CICD,除了技术和流程,还包含文化。例如容器化带来的一个巨大的转变是,原来只有运维关心环境的部署,无论是测试环境,还是生产环境,都是运维搞定的,而容器化之后,需要开发自己写Dockerfile,自己关心环境的部署。因为微服务之后,模块太多了,让少数的运维能够很好的管理所有的服务,压力大,易出错,然而开发往往分成很多的团队,每个模块自己关心自己的部署,则不易出错,这就需要运维一部分的工作让研发来做,需要研发和运维的打通,如果公司没有这个文化,研发的老大说我们不写Dockerfile,则DevOps是搞不定的。


小编每天都会分享这方面的干货,感兴趣的朋友可以关注一下~后面会讲一下从一个持续集成的日常,看上述的几个概念如何实践


持续集成,持续交付,持续部署,敏捷开发,DevOps都啥关系?


本文仅代表作者个人观点,不代表巅云官方发声,对观点有疑义请先联系作者本人进行修改,若内容非法请联系平台管理员,邮箱2522407257@qq.com。更多相关资讯,请到巅云www.yinxi.net学习互联网营销技术请到巅云建站www.yx10011.com。