首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

持续交付2.0:云原生持续交付

持续交付》提出了一系列贯穿整个软件交付生命周期的最佳实践。但它成书的年代(2010年)云计算尚未得到广泛应用,尤其在软件开发过程中的应用非常有限。...如果站在今天的技术水平和对云计算的理解水平基础上回顾《持续交付》的内容,我们有可能提出一组全新的、原生于云环境的持续交付实践。 ?...对于这些反模式,《持续交付》提出的解决办法是“将几乎所有事情自动化”。...《持续交付》中提倡整个部署流水线“只生成一次二进制包”,并且在各个验证步骤之间传递二进制包。...---- 持续集成 尽管《持续交付》说“选择并安装好持续集成工具之后,只要再花几分钟的时间配置一下就可以工作了”,但实际上很少有哪个项目的持续集成实施会如此顺利。

1.7K50

持续交付管理

持续交付 发布可靠软件的系统方法》读书笔记 实现持续交付不仅仅是买些工具,做一些自动化的工作。它依赖于交付过程中所涉及的每个人的协作,来自行政管理层的支持,以及基层人员的改进意愿。...持续交付不仅仅是一种新的交付方法论。对依赖于软件的业务来说,它是一个全新的范例。要想知道为什么,需要研究公司治理核心中一种根本的张力(tension)。...提高软件交付生命周期的可预测性,让计划更有效。 具有采用和遵守任何必要的法律规章的能力。 具备有效发现和管理软件交付相关风险的能力。 通过更好的风险管理和交付更少缺陷的软件来减少成本。...在整个项目过程中,持续识别和管理风险。 风险管理过程应该有如下几个关键特征: 一个项目团队汇报项目状态的标准结构。 项目团队依赖标准,定期更新进度状态。...常见的交付问题 不频繁的或充满缺陷的部署 花很长时间部署某个构建版本,而且部署过程很脆弱。 较差的应用程序质量 交付团队无法实施有效的测试策略。 缺乏管理的持续集成工作流程 不适当的构建过程管理。

58310
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    3.2.2 持续交付

    1.聊聊“持续集成、持续交付持续部署” 在做持续交付项目中,我们经常会遇到持续集成、持续交付持续部署三个词,不同的人对这些词的理解有所不同。...比方说,运维可能容易将持续交付理解为程序自动化分发,重点解决程序向多台主机的下发的自动化,或将持续交付做成运维内部的独立工具,这与“持续”关注的完整流畅的流水线、“交付”关注的用户价值交付有所不符。...“持续集成、持续交付持续部署”这三个概念都有“持续”两个字,单从“持续”两个字,我觉得强调软件交付流水线前后环节之间的连续性、自动化、质量内建、精益管理。...持续交付的边界有两种观点,一种是持续交付介于持续集成与持续部署之间,强调软件一直处于可交付的能力;另一种是持续交付包括了部署。...2.从IT价值看持续交付 1)DevOps与SRE、持续交付 关于价值我在前面提到过数字化转型下的运维价值与运维角色的变化,所以思考持续交付价值,先看看持续交付与DevOps、SRE的关系。

    96610

    持续交付 2.0

    持续交付 1.0 “持续交付 1.0” 是一种能力,也就是说,能够以可持续方式,安全快速地把代码变更(包括特性、配置、缺陷和试验)部署到生产环境上,让用户使用。...4 个核心原则 “持续交付 2.0” 是指企业能够以可持续发展的方式,在高质量、低成本及无风险的前提下,不断缩短持续交付 “8” 字环周期,从而与企业外部频繁互动,获得及时且真实的反馈,最终创造更多客户价值的能力...持续交付七巧板 讨论了 “持续交付2.0” 的指导思想、工作理念和核心原则。大家很容易意识到,它对适应快速变化的市场环境和激烈的市场竞争是非常有效的。...持续交付双环模型的实施与改进将涉及企业内的多个部门与不同的角色,无法由某个部门独立实施,必须在整个组织范围内贯彻执行 “持续交付 2.0” 的思想、理念与原则。...“持续交付 2.0” 的 4 个核心工作原则是坚持少做、持续分解问题、坚持快速反馈和持续改进并衡量。只有这样,才能不断缩短持续交付 “8” 字环的运行周期,提升用户反馈速度,从而提高业务的敏捷性。

    67611

    【翻译】持续交付 VS 持续部署

    (中文版)在我和 Dave 出版《持续交付》一书之前一年多就发表了。...我们决定把这本书叫做《持续交付》有几个原因。首先,有一个有点学究的事实是:部署并不意味着发布。就像我们在书中说的那样,你可以持续部署到 UAT 环境——这不是什么太大的问题。...尽管持续部署意味着持续交付,但反之并不成立。持续交付是把发布计划的决策权交给业务,而不是 IT。...如果你正在使用看板并且想要进行持续交付,直到故事发布给用户之前,这个故事都没有发挥作用。 然而,向用户发布每次成功的构建并不总是有意义的。...那么你什么时候可以说你在做持续交付呢? 我想说的是,如果你认为这是为客户提供价值的最佳方式,那么你可以切换到持续部署。特别是,如果你无法保证向用户每次发布一个成功的构建。

    82310

    持续交付:低风险快速交付

    持续集成和持续交付等实践能够在进行任何更改后立即将代码交付到生产环境中。当使用更小改动的代码块时,将会让新功能发布和修复BUG并行成为可能。...在项目中实施持续集成有很多好处。它是软件更新的一个基本过程,其主要功能是将来自不同开发人员的代码更改集成到一个仓库中。 今天我们将重点介绍 CI/CD 的第二阶段,持续交付。...根据持续交付状态报告,在 19,000 多名开发人员中,有 50% 的人指出他们以每周一次到每月一次的频率进行部署。其中 2/3 的代码在提交后至少需要一周才能成功将代码运行到生产环境中。...何谓持续交付 根据持续交付的实践,团队开发软件是以最小变动代码块为单元,产品发布不是手动进行的,而是通过一个按钮来完成的。代码中的每个小改动都会自动构建、测试并发布到生产环境中。...这是对源代码的系统检查,旨在发现和纠正在开发的初级阶段没有注意到的错误; CD 实施的好处 持续交付的自动化过程为团队和项目带来了许多好处。

    19220

    读《持续交付2.0》

    几年前看过《持续交付(发布可靠软件的系统方法)》,感触不是很深,最近看了这本书的译者乔梁编写的《持续交付2.0》,结合工作中的种种,又有一种相见恨晚的感觉。...全书围绕着双环模型展开,介绍了持续交付,快速实现客户业务价值的一系列的方法论和实践工具。本文将结合实际工作中遇到的问题来谈谈这些方法论和工具。...工具 持续交付在实践过程中离不开自动化工具,大体可以分为自动化构建和自动化测试。...自动化测试 自动化测试大体可以分为单元测试和端到端测试,单元测试对开发人员的要求比较高,要保证持续交付高质量的产品,单元测试非常重要,我们现在也在规划和完善。...总结 持续集成2.0这本书中有很多的干货,本文我只是找了几个我认为比较重要的点进行了描述,总之就一个目的,我们要快速地、正确地、高质量地把任务完成,并交付客户。

    1.3K30

    DevOps和持续交付

    DevOps的另一个核心目标是自动化和持续交付。简单来说,自动化一切可重复的乏味的工作,把更多时间留给人与人之间的交流,这才能产生真实的价值。 多快才算快? DevOps化的转变必须要快。...这也是持续交付运动的思路。 就像敏捷的很多东西一样,DevOps和持续交付虽然有许多概念名称不同,但是它们都有着相同的含义。它们只不过是一枚硬币的正反面而已,在概念上并没有什么争议。...下面是一些敏捷周期可以从DevOps获益的例子: DevOps工程师维护的部署系统,让Scrum周期最后的交付更快、更有效。而交付每2到4周就会周期性地发生。...一旦代码提交到代码库,取决于变更集的大小,一个设计良好的持续交付流水线大约只需要几分钟就可以把提交的代码部署到生产环境。...DevOps和持续交付认为我们交付到生产环境的变更集应该小而频繁,乍一看,ITIL的观点似乎与之相反。然而这并不是事实。

    53410

    持续(集成-->交付-->部署)

    软件的开发工作的大致流程 编码 -> 构建 -> 集成 -> 测试 -> 交付 -> 部署 由上图可知「持续集成(Continuous Integration)」、「持续交付(Continuous Delivery...2.持续交付持续交付(Continuous delivery)指的是,频繁地将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。 持续交付可以看作持续集成的下一步。...它强调的是,不管怎么更新,软件是随时随地可以交付的。 持续交付持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环境」(production-like environments)中。...持续交付优先于整个产品生命周期的软件部署,建立在高水平自动化持续集成之上。 持续交付的好处 持续交付持续集成的优点非常相似: 快速发布。能够应对业务需求,并更快地实现软件价值。...3.持续部署:  持续部署是指当交付的代码通过评审之后,自动部署到生产环境中。持续部署是持续交付的最高阶段。这意味着,所有通过了一系列的自动化测试的改动都将自动部署到生产环境。

    63110

    常识三持续集成、持续交付持续部署

    概念 假如把开发工作流程分为以下几个阶段: 编码 -> 构建 -> 集成 -> 测试 -> 交付 -> 部署 ?...正如你在上图中看到,「持续集成(Continuous Integration)」、「持续交付(Continuous Delivery)」和「持续部署(Continuous Deployment)」有着不同的软件自动化交付周期...「持续交付(Continuous Delivery)」 持续交付持续集成的基础上,将集成后的代码部署到更贴近真实运行环境的「类生产环境」(production-like environments)中。...「持续部署(Continuous Deployment)」 持续部署则是在持续交付的基础上,把部署到生产环境的过程自动化。 ?...三者关系 持续交付持续部署 将持续集成扩充到部署到生产环境就是持续交付持续部署的概念,二者的区别 ? 手动与自动的区别 CI步骤 ?

    1.6K50

    持续测试、持续集成、持续交付持续部署和DevOps

    团队透明度和问责制增加 提高测试可靠性,减少积压,提高最终产品质量给客户 持续测试、持续交付和 DevOps 持续交付的角色从持续集成结束的地方开始。...持续交付仅仅意味着在任何时间点不断地将代码移动到生产环境中,这只能通过对代码的持续测试来实现。它涉及分小阶段将构建交付到生产环境,以便在最终发布之前随时进行彻底的验证和测试。...DevOps鼓励参与产品开发和交付的团队之间进行沟通协调。除了生产之外,大多数团队还在开发和测试环境中工作。持续交付确保代码自动推送给他们。...为什么持续交付在DevOps中很重要?...需要更少的代码更改,使发布高效且可重用 确保可靠和更快的软件交付 提供更好的客户满意度 有效的持续交付流程提高了开发投资回报率 可靠的价值链绩效 持续测试、持续部署和 DevOps 持续部署是另一种软件发布策略

    2K30

    四要素落地持续交付

    一、什么是持续交付 持续交付(Continuous delivery,缩写为 CD),是一种软件工程方法,让软件产品的产出过程在一个短周期内完成,以保证软件可以稳定、持续的保持在随时可以发布的状况。...二、持续交付的价值 其最大的显性价值是,在实施持续交付后,能够做到在保证交付质量的前提下,加快交付速度,从而更快地得到市场反馈,推动产品的商业价值的实现。...在互联网应用盛行、速度为王的几天,持续交付的价值更被突显出来。持续交付的能力,已成为评定一家互联网公司研发能力的重要指标。...三、持续交付的落地 了解了持续交付的价值以后,我们再看持续交付在我们团队的具体推进实践。坦诚地说,在任何一个团队推行持续交付都不是易事。...四、持续交付四要素 从代码提交开始,我们可以把整个持续交付归纳出四个关键要素:持续集成、自动化测试、自动化部署、流水线。下面分别从四个关键要素解读我们的持续交付平台。

    1K30

    Docker下的持续交付

    在研发体系的交付下,更加期望的是编写代码完成后,能够进行自动化的环境部署和自动化测试的冒烟测试,这样就可以节省很多的人力成本的验证时间。...那么在这样的一个过程中,可以完全结合Docker的技术以及结合Jenkins的持续集成的思路,打造一个可持续交付的自动化测试验证的一个过程。...那么可以做一个初始化的处理,也就是前置的动作,在构建镜像前先停止之前的服务,然后删除原来的镜像,这样在后期每次更新代码后进行构建,就不会因为初始化这部分导致流水线失败,这样也就可以打造可持续交付的流水线的作业交付...python3 -m pytest -v test_springboot.py''' } } } } 结合如上的具体实现细节,就可以打造Docker下的持续交付的过程...,也就实现了自动化部署和自动化测试的过程,这样的好处就是拥有很多的微服务也是无所谓的,也是可以使用该思想和具体的技术来打造可持续交付流水线。

    34820
    领券