目前很多大厂如阿里、腾讯、百度、头条、滴滴、美团等公司内部都在做DevOps,那么 DevOps是什么 ? 为什么大厂都对其趋之若鹜 ? DevOps到底应该怎么做 ?刚好我也负责我们公司的DevOps,今天就来讲讲吧!
前言
提到DevOps这个词,我相信很多人一定不会陌生。作为一个热门的概念,DevOps近年来频频出现在各大技术社区和媒体的文章中,备受行业大咖的追捧,也吸引了很多吃瓜群众的围观。
那么什么是DevOps呢?
有人说它是一种方法,也有人说它是一种工具,还有人说它是一种思想。更有甚者,说它是一种哲学。
DevOPs是一种方法论。
DevOps=Developers+Operators,即开发团队和运维团队一体化,尽可能的为公司创造更多价值。
现在流行的做法是将两个职能部门的人融合为一个职能部门,实现开发运维一体化,而早期的时候是两波人分别承担不同的职能,中期的时候是要求两波人密切配合、快速迭代,这中间的变化取决于开发模式的转变。
瀑布开发模型
早期的时候是瀑布开发模型。因为互联网上涌入的网民还不多,大家的关注点是能用、能解决问题即可,所以早期在需求评审阶段产品经理给到的是完整、清晰、固定的需求,研发人员只需要根据需求在约定的时间点进行交差即可
这种开发模式存在的问题是需求不能快速得到验证,很有可能团队花费半年的时间开发出来的东西早已经不适合市场了,也还有种可能是在开发阶段研发需求理解不到位,等到后期验证时发现有问题再去做调整耽误整体工期。
敏捷开发模型
中期的时候是敏捷开发模型。因为互联网上涌入的网民开始增多,大家的关注点开始变成好用、好玩,而此时一些有远见的人开始注意到互联网红利,投身于互联网,此时的开发模式演变成了敏捷开发模型。
敏捷开发模型面对的是频繁的需求变化,要求快速开发。比较流行的实际案例则是Scrum、XP极限编程。在新迭代(一般2-6周)开始前,产品经理将需求拆分成具体的开发任务,研发人员进行任务认领,每日会进行任务的review,直到开发完成,发布新的可用版本。