首页 > 其他分享 >DevOps是什么?能够你的团队带来什么?

DevOps是什么?能够你的团队带来什么?

时间:2023-06-12 15:35:52浏览次数:39  
标签:协作 运维 什么 DevOps 开发 交付 团队

最近几年"DevOps"这个关键词经常出现在项目开发当中,特别是随着微服务/容器/cloud在项目中的大范围应用,你不想知道都很难。作为一个伴随CI/CD到DevOps一路走来的工程师,我将分几个部分漫话DevOps以及相关的概念,作为软件开发工程师,你需要知道并且开始践行DevOps, 它应该成为你职业素养的一部分。 笔者是在2015年左右开始听说“DevOps”这个名词,最早听说并实践的一直是CI/CD (后面会介绍它们之间的关系),从CI/CD开始,你会更容易理解DevOps倡导的文化。

DevOps 是一组用于促进开发和运维人员之间协作的过程、方法和系统的统称。 Wikipedia对DevOps的定义是:

DevOps是软件开发、运维和质量保证三个部门之间的沟通、协作和集成所采用的流程、方法和体系的一个集合。 它是人们为了及时生产软件产品或服务,以满足某个业务目标,对开发与运维之间相互依存关系的一种新的理解。 ...... DevOps并不仅仅关注软件部署,它是部门间沟通协作的一组流程和方法。

DevOps是Development和Operations的组合,是一种方法论,是一组过程、方法与系统的统称,用于促进应用开发、应用运维和质量保障(QA)部门之间的沟通、协作与整合。以期打破传统开发和运营之间的壁垒和鸿沟

DevOps是什么?能够你的团队带来什么?_微服务

从下图中,可以看到Dev 和Ops 关注的点是不同的,并且有各自的利益和关注点,沟通必然存在障碍。一个想快速迭代,一个想稳定;一个不关心怎么部署运维,一个不清楚开发架构;由此带来的就是效率的低下,以及相互的抱怨,但是完整的项目并不是仅仅代码写完就完事了,质量/稳定/运维才是更重要的。

DevOps是什么?能够你的团队带来什么?_微服务_02

DevOps 提倡通过一系列的技术和工具降低开发和运维人员之间的隔阂,实现从开发到最终部署的全流程自动化,从而达到开发运维一体化。通过将 DevOps 的理念引入到整个系统的开发过程中,能够显著提升软件的开发效率,使得各个团队减少时间损耗,更加高效地协同工作,缩短软件交付的周期,更加适应当今快速发展的互联网时代。下面这个DevOps能力图,良好的闭环可以大大增加整体的产出

DevOps是什么?能够你的团队带来什么?_DevOps_03

DevOps 与传统开发方式

DevOps是什么?能够你的团队带来什么?_运维_04

DevOps是什么?能够你的团队带来什么?_运维_05

Why is DevOps

猛得听上去,DevOps很抽象,你可能会问以前没有DevOps不是一样开发交付吗?为什么是DevOps?瀑布开发,敏捷开发都听过吧?DevOps你可以理解为新的开发模型,是文化和技术的方法论,需要公司在组织文化上的变革。

DevOps早在十年前就有人提出来,但是,为什么这两年才开始受到越来越多的企业重视和实践呢?因为DevOps的发展是独木不成林的,现在有越来越多的技术支撑。微服务架构理念、容器技术使得DevOps的实施变得更加容易,计算能力提升和云环境的发展使得快速开发的产品可以立刻获得更广泛的使用。 因为技术在发展,项目的开发过程也需要适应新的技术和框架,微服务那么多,容器可能上千个,你怎么快速部署/维护?

DevOps是什么?能够你的团队带来什么?_微服务_06

DevOps 的好处

  • 依托自动化工具把开发、测试、发布、部署的过程整合,实现高度自动化与高效交付。
  • 在保证产品质量的前提下快速、频繁地发布产品。
  • 能够即使获得用户反馈,并快速响应。
  • 最大限度地减少风险,降低代码的出错率。
  • 高质量的软件发布标准。整个交付过程标准化、可重复、可靠。
  • 整个交付过程进度可视化,方便团队人员了解并控制项目进度。
  • 团队协作更高效。

DevOps 带来的变革

  • 角色分工:打破传统团队隔阂,让开发、运维紧密结合,高效协作
  • 研发:专注研发、高度敏捷、持续集成
  • 产品交付:高质量、快速、频繁、自动化、持续交付

简单的说,DevOps=团队文化+流程+工具 团队文化的意思很简单,就是你的团队要知道并认可DevOps理念;然后就要通过具体的流程和工具来实现这个理念。

标签:协作,运维,什么,DevOps,开发,交付,团队
From: https://blog.51cto.com/devopsingroad/6462928

相关文章

  • REST 和 RPC 有什么本质差异?
    随着Web应用程序和分布式系统的不断发展,面向服务的架构和分布式系统的设计变得越来越重要。在这个领域中,REST和RPC是两种广泛使用的架构风格。本文将分别介绍REST和RPC的概念和特点,然后从丰富的角度来分析REST与RPC的差异。最后,我们将分析REST和RPC的适用场景,并展望它们未来的发展......
  • 都说DevOps落地难,到底难在哪里?也许你还没找到套路
    当你打开这篇文章的时候,也许你也在为DevOps的落地而苦恼,也许你的组织正在尝试DevOps转型,作为一线的实践者,说说我对这个“落地难”的看法,欢迎交流不同看法~DevOps是实践摸索出来的,别人的终究是别人的如下图所示,你可能在不同企业研发效能的分享都看到过,各种关于DevOps的书上有会提到De......
  • 国产数据库软件都有哪些?各有什么有点?
    国产数据库软件是指符合国际数据库标准的数据库管理系统(DBMS)。随着信息化、大数据等领域的发展,国内的数据库软件市场开始逐渐崛起。本文将介绍几种常见的国产数据库软件,以及它们各自的特点和优势。一、南大通用数据库(NUDT)南大通用数据库(NUDT)是由国防科技大学开发的分布式并行数据库......
  • 关于你的类该是什么包装类还是基础类型的疑惑?例如Long和long
    解释一下在Java中,long是基本数据类型,而Long是对应的包装类。DTO实体类中需要使用长整型的属性时,应该使用Long而不是long。这是因为DTO实体类通常用于数据传输,而数据传输过程中需要使用对象,而非基本数据类型。另外,使用Long能够提供更好的灵活性和安全性,因为它可以为null......
  • 为什么很多人自学Python都放弃了?
     有些人学Python并不是因为对编程有浓厚的兴趣,或者没有经验尝试认为入门容易。因此,当他们开始学习Python时,可能会遇到一些困难或感到挫败,导致他们放弃。总的来说,python并不是你想想的那样简单。以下是可能导致放弃的原因:缺乏计算机科学和编程基础:学习Python需要具备一定的计......
  • 为什么很多人自学Python都放弃了?
    有些人学Python并不是因为对编程有浓厚的兴趣,或者没有经验尝试认为入门容易。因此,当他们开始学习Python时,可能会遇到一些困难或感到挫败,导致他们放弃。总的来说,python并不是你想想的那样简单。以下是可能导致放弃的原因:缺乏计算机科学和编程基础:学习Python需要具备一定的计算机科......
  • 什么是“云计算”、“云边协同”
    “云计算”的概念由Google在2006年首次提出,随着IT、CT技术的不断发展和融合,云计算开始快速发展并广泛被接受,但是关于边缘计算、云边端、云边协同的含义及相关联系是什么呢?“云”作为传统云计算的中心节点,云端数据中心;“边”作为云计算的边缘侧,分为基础设施边缘和设备边缘;“端”作为......
  • 什么是MES系统
    制造企业非常关注实现生产过程中的实时采集、提高生产排产的效率、实现制造过程的追溯、提升工人与设备的绩效、保证产品质量等问题。调研数据显示:92%的企业渴望加强对生产过程的控制。大多数制造企业已经逐渐清醒地认识到生产技术领先和制造过程管理高效是其自身发展的关键环节,一......
  • 代理IP出现错误代码300是什么意思
    HTTP代理是我们在使用网络时常用的工具之一,它可以帮助我们隐藏IP地址、加快请求响应速度等,但在使用HTTP代理时有时候会遇到各种错误码。其中,错误码300也是比较常见的一种。那么,这个错误码代表什么情况呢?本文将为您介绍相关内容。首先,HTTP错误码300属于重定向响应状态码。它......
  • 代理IP出现错误代码206是什么意思
    HTTP代理是一种广泛使用的网络访问方式,然而在实际应用中,常常会遇到多种错误码,其中206错误码也经常出现。本文旨在向读者介绍206错误码的含义以及如何处理此类问题。206错误码是HTTP协议定义的一种状态码,它表示了服务器成功处理了部分GET请求。通俗来说,就是当我们用HTTP代理......