DevOps是随着互联网的不断发展而被众多程序员掌握的一种开发方式,而今天我们就通过案例分析来了解一下,DevOps开发还有哪些技术优势。
DevOps作为Development和Operations的组合,被定义为实现软件开发和IT团队之间流程自动化的一组实践,这些实践建立在团队之间协作文化的基础上,填补了开发端和运维端之间的信息鸿沟,以便更快、更可靠地构建、测试和发布软件,目前已经成为主流的软件开发交付模式。
总体来看,DevOps包含了开发、测试和运维三部分。具体看来,它由多个阶段组成:持续开发、持续集成、持续测试、持续反馈、持续监测、持续部署、持续运维,统称为DevOps生命周期。
DevOps功能的分与合在信息流转层面得到了充分体现,在开发交付测试、测试回馈、交付发布等阶段,各类信息的提供方、接收方使用优质的工具系统,进而实现顺畅精准的传输信息和高效的执行机械化操作。
从上述发展理念来看,DevOps的思想源于基础设施层不够强大、不够标准化,所以业务侧需要一套工具来黏合研发、运维人员和相应的基础设施。但随着Kubernetes和基础设施越来越复杂,云原生生态会做出相应的抽象和分层,每一层的角色只和属于自己的数据抽象去交互,即开发侧和运维侧的关注点分离。不断泛化的Serverless也将成为DevOps的一种思想导向和组成部分。在能力侧,“轻运维”、“NoOps”、“自助式运维能力”会成为应用运维的主流方式。在应用侧,应用描述会广泛地进行用户侧的抽象,事件驱动和Serverless理念被拆分和泛化,可以被应用于FaaS之外的多样化的场景中。