【摘要】 DevOps方法可以为组织带来显著的积极影响,降低成本、提高效率,使开发团队的工作更加精简。为了掌握这个过程的优势,有必要认识到DevOps是什么、不是什么。在本文中,就将讨论一些流传甚广的关于DevOps的一些误解。

开发人员社区中流传着大量的DevOps神话。考虑到近年来DevOps概念的流行,这并不奇怪。

DevOps是鼓励采用敏捷思维来提高软件交付过程的速度和质量的实践。在DevOps中,开发团队与运维团队的相互合作,贯穿整个软件生命周期,二者对自己的具体任务负责但并不真正在一起工作。

如果实施得当,DevOps方法可以为组织带来显著的积极影响。它可以降低成本,提高效率,并使开发团队的工作更加精简。为了掌握这个过程的优势,有必要认识到DevOps是什么、不是什么。在本文中,就将讨论一些流传甚广的关于DevOps的一些误解。

×DevOps就是CI和CD

关于DevOps最大的误解之一是它与CI/CD是一回事。事实上,持续集成和交付只是DevOps生命周期的一环,是Devps的关键组件。

DevOps注重团队的文化和责任感,它强调团队中的每个人都需要参与彼此的任务,这样可以提高团队中的协作和沟通能力。

另一方面,CI/CD通过强调自动化的软件和工具实现了这种沟通的文化,所以可以将CI/CD看作达到DevOps的手段。

×DevOps意味着NoOps

NoOps的概念描述了云基础设施足够自动化,以至于不需要手动管理。

NoOps被认为是DevOps的下一个发展模式。与DevOps一样,它的目标是改进软件交付,但允许开发人员专注于应用程序开发,而不必在基础设施和维护上花费过多精力。

通过使用机器学习和人工智能,可以自动化设置、部署和监视过程,从而更接近NoOps。

×自动化消除了所有瓶颈

自动化是DevOps提供的最大好处之一,但它不是可以解决所有问题的银弹。

持续交付过程使团队能够快速推出新功能,并且更快地得到所需要的反馈。当然,这意味着必须确保产品的质量。此外,在扩展时必须考虑到运行情况和性能,还需要确保顺利的生产部署。

自动化CI/CD管道有助于消除代码提交和部署之间的瓶颈。但这只是软件交付过程的一个阶段。除非开发人员和测试人员结成伙伴关系,否则无法解决所有问题,且很可能只会将问题转移到其他流程。

×一刀切式的持续交付管道

拥有一个适用于所有团队和公司的流程是不可能的,这与普遍的想法相反。每个组织都有不同的需求和要求,即使是同一组织中的不同项目也需要不同的持续交付管道。

您可以有只需要两到三个环境的项目。例如,频繁部署的开发、测试和生产环境。在软件交付周期中有多个阶段的项目可能就需要更多的环境。

这就是为什么持续交付管道应该符合公司已经在使用的发布过程。

×DevOps即工具

关于DevOps的讨论主要集中在公司使用的工具上。然后就变成了关于什么是最好的工具的哲学争论。相反,应该交流关于更大的前景,如DevOps给公司带来的商业价值。

DevOps意味着关注文化、心态以及个人如何协同工作。只有在此之后,才应该为流程选择正确的工具。团队经常在工具的大生态系统中寻找最完美的解决方案。构建DevOps管道的时间很长,一旦完成就应该重新进行。

Atlassian的一项研究表明,成功实施DevOps的两个主要因素是合适的工具和合适的人员。

×软件发布与Amazon/Facebook/Google相同

由于DevOps的优点和灵活性,许多世界领先的公司都采用了它。看着这些公司的成功故事,我们当然会敬佩他们的成就。但我们效仿的时候,却忽视了他们的背景和成功的步骤。

有一件事是肯定的——这些组织选择并构建了当时最适合他们的工具和流程。这并不一定意味着我们一定要效仿这些组织。此外,他们所做的不会奇迹般地对我们的业务也起作用。

我们应该向他们学习,寻找创新和发展的新途径。探索并找到定义问题空间的正确流程和工具。什么会给我们的事业带来成功?这就是DevOps的全部内容。

×随时发布

频繁发布的想法让公司担心他们的软件发布不够连续。“船常”已成为行业标准。但是,这并没有指定时间。可能是每两到三个星期,也可能是一天几次。

最重要的是获得了团队的信心,使您能够在需要的时候发布新软件。CD是一种从主分支发布代码并对其充满信心的能力。DevOps的理念是你的代码应该在任何时候都可以发布。

所以请记住,持续交付并不意味着您应该尽可能频繁地发布,而是给予想要的频繁发布的能力,而多长时间发布一次应该由公司决定。

希望这篇文章能帮助你解开一些广为流传的DevOps误解,不要让这种误解阻碍你团队的进步。实施DevOps可以帮助你的公司提高生产力,创造更好的产品,所以不要因为这些DevOps误区而错失良机。

点击关注,第一时间了解华为云新鲜技术~

关于DevOps的七大误解,99%的人都曾中过招!的更多相关文章

  1. 99%的人都理解错了HTTP中GET与POST的区别(转载

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  2. 99%的人都理解错了HTTP中GET与POST的区别

    GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二. 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数. 你可能自己 ...

  3. 99%的人都理解错了HTTP中GET与POST的区别(转自知乎)

    作者:Larry链接:https://zhuanlan.zhihu.com/p/22536382来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. GET和POST是HTT ...

  4. 转:99%的人都理解错了HTTP中GET与POST的区别

    原贴来自:http://www.techweb.com.cn/network/system/2016-10-11/2407736.shtml GET和POST是HTTP请求的两种基本方法,要说它们的区 ...

  5. 99%的人都理解错了GET与POST的区别

    原文链接:https://mp.weixin.qq.com/s?__biz=MzI3NzIzMzg3Mw==&mid=100000054&idx=1&sn=71f6c214f3 ...

  6. 【转载】99%的人都理解错了HTTP中GET与POST的区别

    作者:Larry链接:https://zhuanlan.zhihu.com/p/22536382来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 原文链接 作者:WebT ...

  7. 99%的人都搞错了的java方法区存储内容,通过可视化工具HSDB和代码示例一次就弄明白了

    https://zhuanlan.zhihu.com/p/269134063  番茄番茄我是西瓜 那是我日夜思念深深爱着的人啊~ 已关注   6 人赞同了该文章 前言 本篇是java内存区域管理系列教 ...

  8. 99% 的人都不知道的 Kubernetes 网络疑难杂症排查方法

    原文链接:Kubernetes 网络疑难杂症排查分享 大家好,我是 roc,来自腾讯云容器服务 (TKE) 团队,经常帮助用户解决各种 K8S 的疑难杂症,积累了比较丰富的经验,本文分享几个比较复杂的 ...

  9. JAVA异常使用_每个人都曾用过、但未必都用得好

    一.抛出异常 vs. 返回错误代码 有人说“Well, an exception is a goto.”,但也有人言“makes the code simpler by visibly separat ...

随机推荐

  1. [JZOJ]2109 清兵线 题解

    ## [JZOJ]2109 清兵线 题解 **FIRST 题目大意** 给你一些正整数,这些正整数为数轴上若干个点代表的数.现求:假设从原点出发,走m以内(包括m)的距离最多能够访问多少个点,输出m- ...

  2. MySql 关闭 bin 和 log 日志

    mysql 的 bin 和 .log 日志文件会非常占用磁盘空间和 IO,修改 mysql 配置文件可以关闭这两种日志的记录. 关闭 bin 日志,将下面三项配置注释掉: #log_bin = mys ...

  3. SQL学习 小知识点(一)

    这是我在做实验的时候总结的,随着学习可能会做更多的小总结 ssms上面把所有代码写下来后一块执行是行不通的(极大可能会报错),推测可能是因为ssms先对代码的语法进行了检查.    --My expe ...

  4. 将本地代码初始化上传到gitlab仓库

    首先你已经安装了git. 1.在本地代码目录,鼠标右键Git Bash Here: 2.执行git命令,此命令会在当前目录下创建一个.git文件夹, git init 3.将项目的所有文件添加到仓库中 ...

  5. 面经手册 · 第13篇《除了JDK、CGLIB,还有3种类代理方式?面试又卡住!》

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 编程学习,先铺宽度还是挖深度? 其实技术宽度与技术深度是相辅相成的,你能了解多少技术 ...

  6. 是时候更新手里的武器了—Jetpack最全简析

    前言 Android Jetpack想必大家都耳熟能详了,Android KTX,LiveData,Room等等一系列库都是出自 Jetpack.那么 Jetpack到底是什么?又包含哪些你还没用过的 ...

  7. IIdea使用CXF开发WebService

    写这篇文章主要是用于增强记忆,而我参考的是这位朋友的随笔,链接如下 http://www.xiaomager.com/415.html 服务端开发过程 1.首先创建一个maven项目,如下图 2.添加 ...

  8. 【二分图】HEOI2012 朋友圈

    题目内容 洛谷链接 在很久很久以前,曾经有两个国家和睦相处,无忧无虑的生活着. 一年一度的评比大会开始了,作为和平的两国,一个朋友圈数量最多的永远都是最值得他人的尊敬,所以现在就是需要你求朋友圈的最大 ...

  9. xpath取末尾

    from lxml import etree html = ''' <!DOCTYPE html> <html lang="en"> <head> ...

  10. sql分页 一条语句搞定

    select top 每页条数 * from ( SELECT ROW_NUMBER() OVER (ORDER BY id desc) AS RowNumber,* FROM Article  条件 ...